UNPKG

ken-form-design

Version:

基于vue、ant-design-vue的表单设计器,可视化开发表单

167 lines (150 loc) 4.7 kB
/** * 该文件是为了按需加载,剔除掉了一些不需要的框架组件。 * 减少了编译支持库包大小 * * 当需要更多组件依赖时,在该文件加入即可 */ import Vue from 'vue'; import { pluginManager } from '../utils/index'; import { ConfigProvider, Layout, InputNumber, Card, Empty, Form, Row, Col, Modal, Table, Tabs, Icon, Tooltip, FormModel, Collapse, } from 'ant-design-vue'; pluginManager.addComponent('input', () => import('ant-design-vue/lib/input')); pluginManager.addComponent('textarea', () => import('ant-design-vue/lib/input/TextArea') ); // pluginManager.addComponent('number', () => // import('ant-design-vue/lib/input-number') // ); pluginManager.addComponent('select', () => import('ant-design-vue/lib/select')); pluginManager.addComponent('checkbox', () => import('ant-design-vue/lib/checkbox/Group') ); pluginManager.addComponent('checkboxItem', () => import('ant-design-vue/lib/checkbox/Checkbox') ); // 采用自定义的radio组件 pluginManager.addComponent('radio', () => import('../components/KRadio/index')); // 将第三方ant的radio组件进行抛出 pluginManager.addComponent('radioGroup', () => import('ant-design-vue/lib/radio/Group') ); pluginManager.addComponent('radioItem', () => import('ant-design-vue/lib/radio/Radio') ); pluginManager.addComponent('radioButton', () => import('ant-design-vue/lib/radio/RadioButton') ); pluginManager.addComponent( 'switch', () => import('ant-design-vue/lib/switch'), 'checked' ); pluginManager.addComponent('rate', () => import('ant-design-vue/lib/rate')); pluginManager.addComponent('aSlider', () => import('ant-design-vue/lib/slider') ); pluginManager.addComponent('treeSelect', () => import('ant-design-vue/lib/tree-select') ); pluginManager.addComponent('cascader', () => import('ant-design-vue/lib/cascader') ); pluginManager.addComponent('alert', () => import('ant-design-vue/lib/alert')); pluginManager.addComponent('aButton', () => import('ant-design-vue/lib/button') ); pluginManager.addComponent('button', () => import('../components/KButton/index') ); pluginManager.addComponent('divider', () => import('../components/KDivider/index') ); pluginManager.addComponent('html', () => import('../components/KHtml/index')); pluginManager.addComponent('slider', () => import('../components/KSlider/index') ); pluginManager.addComponent('text', () => import('../components/KText/index')); pluginManager.addComponent('date', () => import('../components/KDatePicker/index') ); pluginManager.addComponent('time', () => import('../components/KTimePicker/index') ); pluginManager.addComponent('uploadFile', () => import('../components/UploadFile/index') ); pluginManager.addComponent('uploadImg', () => import('../components/UploadImg/index') ); pluginManager.addComponent('batch', () => import('../components/KBatch/index')); pluginManager.addComponent('selectInputList', () => import('../components/KSelectInputList/index') ); pluginManager.addComponent('editor', () => import('../components/KEditor/index') ); pluginManager.addComponent('timePicker', () => import('ant-design-vue/lib/time-picker') ); pluginManager.addComponent('datePicker', () => import('ant-design-vue/lib/date-picker') ); pluginManager.addComponent('rangePicker', () => import('ant-design-vue/lib/date-picker/RangePicker') ); pluginManager.addComponent('monthPicker', async () => { const datePicker = await import('ant-design-vue/lib/date-picker'); return datePicker.default['MonthPicker']; }); pluginManager.addComponent('upload', () => import('ant-design-vue/lib/upload')); pluginManager.addComponent('uploadDragger', () => import('ant-design-vue/lib/upload/Dragger') ); pluginManager.addComponent( 'colorPicker', async () => (await import('vcolorpicker'))['default']['colorPicker'] ); pluginManager.addComponent( 'codemirror', async () => (await import('vue-codemirror-lite'))['codemirror'] ); pluginManager.addComponent('combobox', () => import('../components/KComboBox/index') ); // 护士签名 pluginManager.addComponent('nursesign', () => import('../components/KNurseSign/index') ); pluginManager.addComponent('number', () => import('../components/KInputNumber/index') ); Vue.use(ConfigProvider); Vue.use(Tooltip); Vue.use(Empty); Vue.use(FormModel); Vue.use(Collapse); Vue.use(Layout); Vue.use(Card); Vue.use(Form); Vue.use(Row); Vue.use(Col); Vue.use(Modal); Vue.use(Table); Vue.use(Tabs); Vue.use(Icon); Vue.use(InputNumber);