微信小程序点餐_vue+element创建动态的form表单及动态生成表格的行

vue+element创建动态的form表单及动态生成表格的行和列       这篇文章主要介绍了vue+element创建动态的form表单及动态生成表格的行和列 ,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

 动态创建form表单,网上有插件 (form-create) 不过我不知道它怎么用,没有使用成功,如果你使用成功了,欢迎下方留言.

最后我使用了笨方法,针对各个表单写好通用的组件,然后根据type用v-if来渲染对应的表单,数据,事件什么的都可以动态的传进去,比较好用

 el-form size="mini" 
 div v-for="(item,i) in table.customerList" :key="i" 
 !-- 0单行文本 -- 
 el-form-item
 :label="item.field_title + ': '"
 v-if="item.field_type == '0' item.is_show == '1'"
 el-input v-model="item.value" :placeholder="item.placeholder" /el-input 
 /el-form-item 
 !-- 3下拉菜单 -- 
 el-form-item
 :label="item.field_title + ': '"
 v-if="item.field_type == '3' item.is_show == '1'"
 el-select v-model="item.value" :placeholder="item.placeholder" 
 span v-for="(item1,i) in item.field_value" :key="i" 
 el-option :label="item1" :value="item1" /el-option 
 /span 
 /el-select 
 /el-form-item 
 /div 
 /el-form 

动态生成表格的行和列,主要是要求后端返回的数据格式,根据数据来动态渲染

注意点:这里两个数组 :  表格字段数据: titleData: [],  表格详细数据: tables: [], 数据通过字段来查找/渲染成表格的

 template 
 div 
 div 
 el-table
 :data="tables"
 ref="multipleTable"
 tooltip-effect="dark"
 @selection-change='selectArInfo' 
 el-table-column type="selection" width="45px" /el-table-column 
 el-table-column label="序号" width="62px" type="index" 
 /el-table-column 
 template v-for='(col) in titleData' 
 el-table-column
 sortable
 :show-overflow-tooltip="true"
 :prop="col.dataItem"
 :label="col.dataName"
 :key="col.dataItem"
 width="124px" 
 /el-table-column 
 /template 
 el-table-column label="操作" width="80" align="center" 
 template slot-scope="scope" 
 el-button size="mini" @click="delTabColOne()" i /i /el-button 
 /template 
 /el-table-column 
 /el-table 
 /div 
 /div 
 /template 
 data () {
 return {
 tables: [{
 xiaoxue: '福兰',
 chuzhong: '加芳',
 gaozhong: '蒲庙',
 daxue: '西安',
 yanjiusheng: '西安',
 shangban: '北京'
 }, {
 xiaoxue: '南坊',
 chuzhong: '礼泉',
 gaozhong: '礼泉',
 daxue: '西安',
 yanjiusheng: '西安',
 shangban: '南坊'
 }, ],
 titleData: [{
 dataItem: 'xiaoxue',
 dataName: '小学'
 }, {
 dataItem: 'chuzhong',
 dataName: '初中'
 }, {
 dataItem: 'gaozhong',
 dataName: '高中'
 }, {
 dataItem: 'daxue',
 dataName: '大学'
 }, {
 dataItem: 'yanjiusheng',
 dataName: '研究生'
 }, {
 dataItem: 'shangban',
 dataName: '上班'
 }

总结

以上所述是小编给大家介绍的vue+element创建动态的form表单及动态生成表格的行和列,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!


相关阅读