form-create-designer中怎么扩展自定义组件

简介: 该内容是关于在某个框架(可能是Vue)中导入和使用自定义组件的教程。首先,通过`import`语句引入自定义组件`MyButton`和`FcDesigner`。然后,使用`FcDesigner.component()`或`app.component()`方法挂载组件。接着,定义组件的拖拽规则,包括其在菜单的位置、图标、名称和唯一ID,以及组件的渲染和属性配置规则。最后,将组件的拖拽规则挂载到设计器(`$refs.designer`)中,以便在界面上使用。

1.导入并挂载自定义组件

//导入自定义组件

import MyButton from './button.Vue';

import FcDesigner from '@form-create/designer';

//挂载自定义组件

FcDesigner.component('MyButton', MyButton);

//或者全局挂载

app.component('MyButton', MyButton);

2.定义组件的拖拽规则

const buttonRule = {

   //插入菜单位置

   menu: 'aide',

   //图标

   icon: 'icon-button',

   //名称

   label: '按钮',

   //id,唯一!

   name: 'MyButton',

   //是否可以操作, 除了容器类组件建议为true !

   mask: true,//定义组件的渲染规则

   rule({t}) {

         //自定义组件的生成规则

       return {

           type: 'MyButton',

           props: {},

           children: ['按钮'],

       };

   },

     //自定义组件的属性配置

   props(_, {t}) {

       return [{

           //修改rule.children[0]

           type: 'input',

             title: '内容',

           field: 'formCreateChild',

       }, {

           //修改rule.props.size

           type: 'select',

             title: '尺寸',

           field: 'size',

           options: [

             {label: 'large', value: 'large'},

             {label: 'default', value: 'default'},

             {label: 'small',value: 'small'}

           ]

       }];

   }

};

3.挂载组件的拖拽规则

//挂载拖拽规则

this.$refs.designer.addComponent(buttonRule);

this.$refs.designer.appendMenuItem('main', {

   icon: 'icon-button',

   label: '按钮',

   name: 'MyButton',
});


相关文章
|
JSON JavaScript 前端开发
【form-generator在线表单生成---vue父组件调用vue弹框组件】
【form-generator在线表单生成---vue父组件调用vue弹框组件】
930 1
|
前端开发
react-grapesjs——开源代码学习与修改(初出茅庐)(一)
react-grapesjs——开源代码学习与修改(初出茅庐)
451 0
|
8月前
|
JSON 监控 前端开发
AMIS:百度开源的前端低代码神器,18.4k star 背后的开发效率提升利器
AMIS(前端低代码框架)是百度开源的低代码前端框架,基于纯 JSON 配置即可生成完整后台页面,包括表单、表格、图表、CRUD 列表,支持可视化拖拽编辑。,星标数已达 18.4k,百度内部已沉淀超过 5 万个页面,广泛应用于审核系统、数据管理后台、模型监控等落地场景
1495 0
|
10月前
|
监控 Java 数据安全/隐私保护
阿里面试:SpringBoot启动时, 如何执行扩展代码?你们项目 SpringBoot 进行过 哪些 扩展?
阿里面试:SpringBoot启动时, 如何执行扩展代码?你们项目 SpringBoot 进行过 哪些 扩展?
|
数据格式
使用小技巧实现el-table组件的合并行功能,ElementUI和ElementPlus都适用
本文介绍了在ElementUI和ElementPlus中使用`el-table`组件实现合并行功能的技巧,包括多列合并和单列合并的方法,并提供了相应的示例代码和运行效果。
10616 46
使用小技巧实现el-table组件的合并行功能,ElementUI和ElementPlus都适用
|
JavaScript 前端开发
【Vue 3】如何实现动态表单生成器的拖拽功能?
【Vue 3】如何实现动态表单生成器的拖拽功能?
|
存储 API
vue3中如何动态自定义创建组件并挂载
vue3中如何动态自定义创建组件并挂载
1365 90
|
JavaScript
Vue3代码展示(vue-codemirror)
`vue-codemirror`插件为Vue应用提供了一个强大的代码编辑器组件,支持代码高亮、自定义样式、暗黑模式等特性。通过简单的配置即可实现丰富的代码编辑体验。安装依赖后,创建`CodeMirror.vue`组件并在目标页面中使用即可。
2686 1
Vue3代码展示(vue-codemirror)
|
存储
el-table分页记录数据
el-table分页记录数据
434 0
Vue3拖拽插件(vuedraggable@next)
vuedraggable 是一款 Vue2 拖拽插件,可轻松实现列表项的拖拽排序与交互。通过简单配置,即可在不同区域间拖动元素并实现数据同步。支持多种事件监听和自定义样式。
2215 2
Vue3拖拽插件(vuedraggable@next)