The secondary need development need fundamental comment of vue, regards vue you can refer to https://cn.vuejs.org/v2/guide/.
git clone https://github.com/GavinZhuLei/vue-form-making.git
npm install
npm run serve
You can rebuild the code if you have any change, and then put the package into dist directroy, the build command is as below:
npm run build-bundle
You can extend the attributes of the component as you need,we will show you how to do this:
src/components/Container.vue
<script>
export default {
// ...
data () {
return {
widgetForm: {
list: [],
config: {
labelWidth: 100,
labelPosition: 'top',
size: 'small'
// put you own attributes here
},
},
}
}
}
</script>
open src/components/FormConfig.vue
, modify the file to support your new attributes. the props.data
is the config data widgetForm.config.
open src/components/GenerateForm.vue
, modify the file to add your new attributes.
Modify src/components/componentsConfig.js to add you custom component information,currently we have 3 objects to save the component information , they are basicComponents advanceComponents layoutComponents, which we call them [Basic Component], [Advanced Component], [Layout] in MakeForm:
{
type: 'input', //component type
name: 'text', //The name of component,which will display in MakeFrom
icon: 'icon-input', //The icon of the component, you can customized the icon
options: { // The configuration of component
defaultValue: '', // Defalue value of the component
}
}
Import you component in src/components/WidgetFormItem.vue 、 src/components/GenerateFormItem.vue as below:
import CustomComponent from 'your component location'
export default {
components: {
CustomComponent
}
}
Modify src/components/WidgetConfig.vue according to your requirement, now you can use you own component in the FromMaking.
For default,we used Alibaba font icon library iconfont , if you want to customized the icon, you can copy you own icon file into the project to replace the default icon, if default icon is in src/iconfont.