# naiveui-form-designer **Repository Path**: logicyle/naiveui-form-designer ## Basic Information - **Project Name**: naiveui-form-designer - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2025-05-08 - **Last Updated**: 2025-05-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

# naiveui-form-designer **这个是基于naiveui Vue3 版本** > @form-create/designer 的基础上将element-ui替换为naiveui **naiveui-form-designer 是基于 [@form-create/designer](https://github.com/xaboy/form-create) vue3版本实现的表单设计器组件。可以通过拖拽的方式快速创建表单,提高开发者对表单的开发效率,节省开发者的时间。** ![demo1](http://form-create.com/img/designer-review.png) ## 引入 **NodeJs:** ```shell npm i naiveui-form-designer ``` 请自行导入`naiveui`并挂载 ```js import FcDesigner from 'naiveui-form-designer' const designer = ref() ``` ## 使用 ```html ``` ## 设置多语言 通过 locale 配置项设置语言 ```vue ``` ## 组件`props` - **menu**`MenuList` 重新配置拖拽的组件 - **height**`int|string` 设计器组件高度, 默认`100%` - **locale**`object` 设置多语言 - **config**`Config` 设置多语言 - **mask** `boolean` 设置拖拽表单中的组件是否可以操作 ## 组件方法 - 获取当前生成表单的生成规则 ```ts type getRule = () => Rule[] ``` **示例: `this.$refs.designer.getRule()`** - 获取当前表单的全局配置 ```ts type getOption = () => Object ``` - 设置当前生成表单的规则 ```ts type setRule = (rules: Rule[]) => void; ``` - 设置当前表单的全局配置 ```ts type setOption = (option: Object) => void; ``` - 增加一组拖拽组件 ```ts type addMenu = (menu: Menu) => void; ``` - 删除一组拖拽组件 ```ts type removeMenu = (name: string) => void; ``` - 批量覆盖插入拖拽组件 ```ts type setMenuItem = (name: string, items: MenuItem[]) => void; ``` - 插入一个拖拽组件到分组 ```ts type appendMenuItem = (name:string, item: MenuItem) => void; ``` - 删除一个拖拽组件 ```ts type removeMenuItem = (item: string | MenuItem) => void; ``` - 新增一个拖拽组件的生成规则 ```ts type addComponent = (item: DragRule) => void; ``` > **提示! 内置的三个组件分组`name`分别为: `main`,`aide`,`layout`** ## License [MIT](http://opensource.org/licenses/MIT) Copyright (c) 2023-present chengliang4810