关于在el-table中自定义内容时引用el-input输入框的bug

由于项目中需要实现在table的表头是从接口动态获取的,然后个别的列可以更改值的功能,所以便用element的table组件来实现需求

我的思路是用el-table中的scope插槽自定义列来实现,然后用el-input组件来双向绑定输入的值,submit后就可以调用后台的保存api来完成数据提交。
但是等我写完之后发现我的el-input输入值时没有任何反应,打了console之后发现只有@input可以触发,@change事件怎么也触发不了。。。。

然后经过各种百度,gpt寻找答案后依旧没能解决问题,当时灵机一动既然el-input无法达到我的要求,那就用原生input试试吧

没想到竟然可以了,change事件也可以调用了,想了想可能是element在做二次封装的时候在动态表头的时候需要用到什么特殊的属性,但是我没找到。但是使用原生input就没问题了,记录一下,也希望能帮到遇到和我类似问题的朋友们做参考
el-tableel-table-column是Element UI库中的两个组件,用于展示表格数据。自定义指令可以用于对el-tableel-table-column进行扩展和定制。 对于el-table,可以使用自定义指令来实现一些特定的功能,比如自定义排序、拖拽列宽、固定表头等。通过自定义指令,可以在el-table上添加一些额外的行为或样式。 对于el-table-column,可以使用自定义指令来实现一些特定的列样式或行为。比如,可以通过自定义指令来实现某一列的特殊渲染、列宽自适应等功能。 下面是一个示例,展示如何使用自定义指令来扩展el-tableel-table-column: 1. 创建一个自定义指令: ```javascript Vue.directive('my-directive', { bind: function (el, binding, vnode) { // 在绑定执行的逻辑 // 可以在这里修改el-tableel-table-column的行为或样式 }, inserted: function (el, binding, vnode) { // 在元素插入到DOM执行的逻辑 }, update: function (el, binding, vnode, oldVnode) { // 在组件更新执行的逻辑 }, componentUpdated: function (el, binding, vnode, oldVnode) { // 在组件更新完成后执行的逻辑 }, unbind: function (el, binding, vnode) { // 在解绑执行的逻辑 } }); ``` 2.el-tableel-table-column上使用自定义指令: ```html <el-table v-my-directive> <!-- 表格内容 --> </el-table> <el-table-column v-my-directive> <!--内容 --> </el-table-column> ``` 通过上述方式,你可以根据自己的需求来扩展和定制el-tableel-table-column的行为和样式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值