vue 数组使用foreach修改之后视图不更新

修改红色的数组,修改完之后但是视图不更新,求解决办法
clipboard.png

阅读 7.4k
3 个回答

使用this.$set(item,'state',this.webData.State)这样来修改,若还是不行,可强行调用this.$forceUpdate()方法来更新整个文档。

大可能是你原本的对象数组里没有state这个属性吧,vue对于新追加的属性是不即时xuan'ran'de

数组中的对象 健为 state 的这个属性刚开始初始化时就设定了吗?? 如果刚开始就有 state 属性,直接赋予值是可以触发视图更新的,因为初始化时已经将对象中的属性值通过 Object.defineProperty() 变为响应式的了。如果为后加入的属性,则需要通过数组方法加入,才能触发视图更新。直接通过属性赋值是无法触发视图更新的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题