Files
HiveGrid-Wireframes/hivegrid-cloud/apps/web/app/utils/hooks/use-array-state.ts
T

22 lines
450 B
TypeScript

import { useState } from "react";
const useArrayState = <T>(initialArray: T[]) => {
const [state, setState] = useState(initialArray);
const add = (item: T) => {
setState((prev) => [...prev, item]);
};
const remove = (index: number) => {
setState((prev) => {
const newState = [...prev];
newState.splice(index, 1);
return newState;
});
};
return [state, { add, remove }];
};
export default useArrayState;