feat: 优化post界面

This commit is contained in:
xingyuv
2023-02-09 18:41:48 +08:00
parent a379e3a206
commit 563eb8ba90
2 changed files with 21 additions and 21 deletions

View File

@ -39,7 +39,7 @@ const emit = defineEmits(['success'])
// 弹窗相关的变量
const modelVisible = ref(false) // 是否显示弹出层
const modelTitle = ref('edit') // 弹出层标题
const modelTitle = ref('update') // 弹出层标题
const modelLoading = ref(false) // 弹出层loading
const actionType = ref('') // 操作按钮的类型
const actionLoading = ref(false) // 按钮 Loading
@ -67,26 +67,25 @@ const openModal = async (type: string, rowId?: number) => {
const submitForm = async () => {
const elForm = unref(formRef)?.getElFormRef()
if (!elForm) return
elForm.validate(async (valid) => {
if (valid) {
actionLoading.value = true
// 提交请求
try {
const data = unref(formRef)?.formModel as PostApi.PostVO
if (actionType.value === 'create') {
await PostApi.createPostApi(data)
message.success(t('common.createSuccess'))
} else {
await PostApi.updatePostApi(data)
message.success(t('common.updateSuccess'))
}
modelVisible.value = false
emit('success')
} finally {
actionLoading.value = false
const valid = await elForm.validate()
if (valid) {
actionLoading.value = true
// 提交请求
try {
const data = unref(formRef)?.formModel as PostApi.PostVO
if (actionType.value === 'create') {
await PostApi.createPostApi(data)
message.success(t('common.createSuccess'))
} else {
await PostApi.updatePostApi(data)
message.success(t('common.updateSuccess'))
}
modelVisible.value = false
emit('success')
} finally {
actionLoading.value = false
}
})
}
}
defineExpose({ openModal: openModal })

View File

@ -51,7 +51,7 @@ import { allSchemas } from './post.data'
import PostForm from './PostForm.vue'
const { t } = useI18n() // 国际化
const modalRef = ref()
// 列表相关的变量
const [registerTable, { reload, deleteData, exportList }] = useXTable({
allSchemas: allSchemas,
@ -59,7 +59,8 @@ const [registerTable, { reload, deleteData, exportList }] = useXTable({
deleteApi: PostApi.deletePostApi,
exportListApi: PostApi.exportPostApi
})
// 表单相关的变量
const modalRef = ref()
const openModal = (type: string, rowId?: number) => {
modalRef.value.openModal(type, rowId)
}