0.1.4 • Published 2 years ago

base-ui-vue2 v0.1.4

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

base-ui-vue2

说明

基于Vue2.x 、element-ui的二次封装

安装

npm install base-ui-vue2 --save

应用

//在main.js中引入
import baseForm from 'base-ui-vue2'
Vue.use(baseForm)

用法示例

<template>
    <base-form 
        :formList="formList" 
        :baseForm.sync='form'
        @submit='submit' 
        @cancel='cancel'>
        <template slot="slot">
            <el-input v-model="baseForm.slot" placeholder="我是插槽" />
        </template>
    </base-form>
</template>

<script>
export default {
    data () {
        return {
            formList:[
                {
                    type: 'input', 
                    field: 'input1',
                    label: '输入框',
                    initVal:'123',
                    rules: [{
                        required: true, message: '不能为空', trigger: 'blur'
                    }]
                },
                {
                    type: 'select',
                    field: 'select',
                    label: '下拉框单选',
                    options: [
                        {
                            code: 1,
                            name: '黄金糕'
                        }
                    ],
                    defaultProp: {
                        label: 'name',
                        value: 'code'
                    }
                },
                {
                    type: 'slot',
                    field: 'slot',
                    label: '插槽'
                },
            ],
            form:{
                slot:''
            }
        }
    },
    methods:{
        submit(val){
            console.log('返回的表单值' + val)
            console.log(this.form)
        },
        cancel(){
            console.log('点击取消了')
        }
    }
}
</script>

Props说明

属性说明类型是否必传默认值
formList表单渲染元素列表,详细说明如下文array
baseForm表单初始数据object / null
inline行内表单形式booleanfalse
groupBtn自定义按钮,设置自定义按钮则不显示默认按钮,详细说明如下文array
isShowButton是否显示默认表单按钮booleantrue
buttonPosition按钮位置,左:left,中:center,右:right,stringcenter
defaultProps默认表单统一属性,详细说明如下文objectwidth: '100%',labelWidth: '120px',labelPosition: 'right',span: 24,offset: 0,gutter:0,submitText: '提交',cancelText: '取消'

formList属性

属性说明类型是否必传可选值
type表单域类型string'input':输入框, 'select':下拉框,'cascader':级联选择器,'date':日期'time':时间,'radio':单选框,'checkbox':多选框,'textarea':文本域,'switch':开关,'slot':自定义插槽,
field表单域绑定的参数string
label表单域标签string
width表单域宽度,单独设置某项宽度时可用,统一设置则可以设置‘defaultProps’中的‘width’string
initVal初始值设置string/array
rules表单域校验规则,用法与el-form一样array
disabled表单域是否可编辑boolean
options下拉框/级联选择器/单选框/多选框的列表数据,每一项的数据项默认是label和value两个参数,如若不是可以设置defaultProparray
defaultProp设置options的label和value对应的参数object
dateType日期类型,默认datestringyear/month/date/dates/ week/datetime/datetimerange/ daterange/monthrange
timeType时间类型,默认timestringtime/timeRange

tip

formList中每一个表单类型可配置的属性还有很多,与elementUi中的组件的属性配置相同

defaultProps属性

属性说明类型是否必传默认值
width表单域宽度string100%
labelWidth表单域标签宽度string120px
labelPosition表单域标签位置,左:left,右:right,上:topstringright
span栅格占据的列数number24
offset栅格左侧的间隔格数number0
gutter栅格间隔number0
submitText默认按钮中第一个按钮的文本number提交
cancelText默认按钮中第二个按钮的文本number取消

groupBtn属性

属性说明类型是否必传
type按钮类型(primary / success / warning / danger / info / text)string
label按钮名称string
handle点击按钮时触发的事件function(form,formName)

表单事件

事件名称说明回调参数
submit点击默认按钮中的提交按钮时触发表单的值
cancel点击默认按钮中的取消按钮时触发
0.1.4

2 years ago

0.1.3

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago