mirror of
https://github.com/FranP-code/ChatGPT.git
synced 2025-10-13 00:13:25 +00:00
chore: optim
This commit is contained in:
12
src/hooks/useData.ts
vendored
12
src/hooks/useData.ts
vendored
@@ -7,9 +7,8 @@ export default function useData(oData: any[]) {
|
||||
const [opData, setData] = useState<any[]>([]);
|
||||
|
||||
useEffect(() => {
|
||||
const nData = oData.map(i => ({ [safeKey]: v4(), ...i }));
|
||||
setData(nData);
|
||||
}, [oData])
|
||||
opInit(oData);
|
||||
}, [])
|
||||
|
||||
const opAdd = (val: any) => {
|
||||
const v = [val, ...opData];
|
||||
@@ -17,6 +16,11 @@ export default function useData(oData: any[]) {
|
||||
return v;
|
||||
};
|
||||
|
||||
const opInit = (val: any[] = []) => {
|
||||
const nData = val.map(i => ({ [safeKey]: v4(), ...i }));
|
||||
setData(nData);
|
||||
};
|
||||
|
||||
const opRemove = (id: string) => {
|
||||
const nData = opData.filter(i => i[safeKey] !== id);
|
||||
setData(nData);
|
||||
@@ -31,5 +35,5 @@ export default function useData(oData: any[]) {
|
||||
return nData;
|
||||
};
|
||||
|
||||
return { opSafeKey: safeKey, opReplace, opAdd, opRemove, opData };
|
||||
return { opSafeKey: safeKey, opInit, opReplace, opAdd, opRemove, opData };
|
||||
}
|
||||
Reference in New Issue
Block a user