H5W3
当前位置:H5W3 > 其他技术问题 > 正文

el-table slot="header"修改值不会重新渲染

Demo如下:

codepen demo

使用$set修改v-for循环出来的列,想动态修改表头名,使用了官方的slot=header,不会重新渲染,使用forceUpdate也无法强制渲染;

使用v-if条件渲染可以实现删除之后重新渲染出来,但是肯定不不对。

请问是什么原因?

回答:

你用索引做key 数据变更dom进行diff的时候因为key跟上次一致所以就继续沿用原来的dom了,官网明确写着:
有相同父元素的子元素必须有独特的 key。重复的 key 会造成渲染错误。

简单把:key="i" 改成:key="c.name" 就能触发更新了

本文地址:H5W3 » el-table slot="header"修改值不会重新渲染

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址