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

时间:2021-05-26

效果

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实现双向绑定数据的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章