feat(ui): 新增系统设置

This commit is contained in:
廖彦棋
2024-03-07 17:24:50 +08:00
parent 721a8f1ecb
commit 825da42208
11 changed files with 452 additions and 4 deletions

View File

@@ -1,9 +1,9 @@
import { ref, reactive, unref } from "vue";
import { Message } from "@arco-design/web-vue";
import type { BaseResponse } from "@gpt-vue/packages/type";
function useSubmit<T extends Record<string, unknown>, R = any>(defaultData: T) {
function useSubmit<T extends Record<string, any> = Record<string, any>, R = any>(defaultData?: T) {
const formRef = ref();
const formData = reactive<T>({ ...defaultData });
const formData = reactive<T | Record<string, any>>({ ...defaultData ?? {} });
const submitting = ref(false);
const handleSubmit = async (api: (params?: any) => Promise<BaseResponse<R>>, params) => {
@@ -11,7 +11,7 @@ function useSubmit<T extends Record<string, unknown>, R = any>(defaultData: T) {
try {
const hasError = await formRef.value?.validate();
if (!hasError) {
const { data, message } = await api({ ...formData, ...unref(params) });
const { data, message } = await api({ ...formData ?? {}, ...unref(params) });
Message.success(message);
return Promise.resolve({ formData, data });
}