曹睿
2025-05-21 fe6dbaaefef6dd9bb4a1ee26df8ad8b451500a10
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import { reactive } from "vue";
import { cloneDeep } from "lodash";
 
export default function useFormData<T extends object>(initData: T) {
  const form: any = reactive<T>(cloneDeep(initData, true));
 
  function resetForm() {
    const initData2 = JSON.parse(JSON.stringify(initData));
    Object.keys(initData).forEach((key) => {
      form[key] = initData2[key];
    });
  }
 
  return { form, resetForm };
}