Skip to content
On this page

useCurd 新增和编辑

页面中的 修改编辑 弹框一般功能及布局很相似,所以我们进行统一处理。

如何使用

vue
<template>
    <div>
        <DtCurdModal></DtCurdModal>
    </div>
</template>

<script lang="ts" setup>
    import { useCurd, useSource } from '@dt-frames/ui'

    const { curd } = useSource({
        ...
    })

    const { DtCurdModal } = useCurd({
        ...curd,        // 注意 这里是弹框与页面交互的枢纽
        title: '测试',
        width: '50%',
        schemas: [
            ...         // 表单相关配置
        ]
    })

</script>

useCurd API

属性说明类型默认值版本
t国际化备注string
title弹框标题string | ComputedRef | () => string
width弹框宽度string | number'50%'
schemas请参考表单配置FormSchema[]
formPropsform表单的属性, 请参考[表单配置](./form表单
footer底部按钮控制null | ButtonProps[]
showFullscreen是否显示全屏booleantrue
showClosable是否显示关闭按钮booleantrue
primaryKey物理主键string | number'id'
onSave点击保存按钮的回调() => void
onQueryById根据id查询数据(id: Key) => Promise<any>
registerInstance将useCurd组件内的数据传入到useSource,方便数据统一处理(注意:标准的增删改查必须有此属性)