当我更改创建的数据时,vuejs不会更新html

时间:2019-01-08 06:24:37

标签: javascript vue.js vuejs2

这是链接

https://codepen.io/anon/pen/pqKrzY

html看起来像

<span>items[selected].text: {{ items[selected].text }}</span>

created

created() {
  setTimeout(() => {
     this.items[0] = {
        text: "XX"
     };
     this.items[1] = {
        text: "YY"
     };
  }, 1000)
 }

这不会自动更新,但是如果我单击选择,它将改变。 如果我删除了setTimeout,它将自动更新。

2 个答案:

答案 0 :(得分:0)

您无法通过vue以这种方式操作数组,请参考:Common Gotchas

这是一个示例,它如何工作:https://codepen.io/anon/pen/NezvYV

this.items.$set(0, {
            text: "XX"
         })

答案 1 :(得分:0)

您可以使用

   this.items[0].text = 'XX';
   this.items[1].text = 'YY';