首页 > 编程 > JavaScript > 正文

VUE-Table上绑定Input通过render实现双向绑定数据的示例

2019-11-19 13:08:45
字体:
来源:转载
供稿:网友

效果

HTML的Table

<Card>     <div ref="print" >      <Table  width="100%" height="500" size="small" :columns="columns7" :stripe="true" :data="data" border ></Table>     </div></Card>

JS代码

<script>  export default {    data () {      return {        columns7: [     {      title: '序号',      type: 'index',      width: 200     },     {      title: '新批次',      width: 350,      key:'newLots'     },     {      title: '数量',      key: 'numLots',      width: 350,      align: 'center',      render: (h, params) => {       var vm = this;       return h('div', [        h('Input', {         props: {         //将单元格的值给Input         value:params.row.numLots,         },         on:{            'on-change' (event) {              //值改变时              //将渲染后的值重新赋值给单元格值                params.row.numLots = event.target.value;             vm.data[params.index] = params.row;           }           }        },)       ]);      }     },     {      title: '操作',      key: 'action',      width: 350,      align: 'center',      render: (h, params) => {       return h('div', [        h('Button', {         props: {          type: 'error',          size: 'default'         },         style: {          marginRight: '5px'         },         on: {          click: () => {           this.openDeleteDialog(params.index)          }         }        }, '删除')       ]);      }     }    ],    data: [],      }    }  }</script>

这样就实现Input和Table单元格数据的双向绑定,取值是直接循环单元格来取值。

双向绑定数据的核心代码:

on:{            'on-change' (event) {              //值改变时              //将渲染后的值重新赋值给单元格值                params.row.numLots = event.target.value;             vm.data[params.index] = params.row;           }           }

完成~

以上这篇VUE-Table上绑定Input通过render实现双向绑定数据的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表