
一款基于 Vue2 和 ElementUI 的组件库
功能增强
基于常见业务场景对 ElementUI 进行增强。
模块化开发
通过JSX语法,实现了表单表格的模块化拆分。
易用性
99%支持原生属性及方法,学习成本极低。
# 安装
yarn add aile-ui
# 引入
import Vue from 'vue'
import Element from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
import AileUI from 'aile-ui'
Vue.use(AileUI, {
form: {
form: {
labelWidth: '80px'
},
formItem: {
size: 'small'
},
config: {
emptyText: '暂无数据'
}
}
})
# 快速使用
<template>
<aile-form
ref="form"
:model="form"
:columns="columns"
label-width="80px"
/>
</template>
<script>
export default {
data() {
return {
form: {
name: '',
region: '',
desc: ''
}
}
},
computed: {
columns() {
return [
{
prop: 'name',
label: '活动名称',
render: (h, form) => (
<aile-input v-model={form.name} />
)
},
{
prop: 'region',
label: '活动区域',
render: (h, form) => (
<aile-select
v-model={form.region}
config={{
data: [
{
label: '区域一',
value: 'shanghai'
},
{
label: '区域二',
value: 'beijing'
}
],
label: 'label',
value: 'value'
}}
/>
)
},
{
prop: 'desc',
label: '活动形式',
render: (h, form) => (
<aile-input type="textarea" v-model={form.desc}></aile-input>
)
},
{
label: '',
render: h => (
<div>
<el-button type="primary" onClick={this.onSubmit}>立即创建</el-button>
<el-button>取消</el-button>
</div>
)
}
]
}
},
methods: {
onSubmit() {
console.log('submit: ', this.form);
}
}
}
</script>