Vue数组元素双向绑定
要想正确使用VUE双向绑定数组,要注意以下3种情况:1、使用push、pop、shift、unshift、splice、sort和reverse会改变原数组的操作,VUE能正常检测到数组变化而更新视图。2、使用filter、concat、slice这几种方法操作数组,并不会改变原数组,VUE自然不会检测到数据变化也不会去更新视图。3、使用下标方式(number[0] = x)、直接修改数组...
·
要想正确使用VUE双向绑定数组,要注意以下3种情况:
1、使用push、pop、shift、unshift、splice、sort和reverse会改变原数组的操作,VUE能正常检测到数组变化而更新视图。
2、使用filter、concat、slice这几种方法操作数组,并不会改变原数组,VUE自然不会检测到数据变化也不会去更新视图。
3、使用下标方式(number[0] = x)、直接修改数组长度number.length = 1这两种方式虽然改变了原数组,但此时VUE检测不到数组变化,也不会更新视图。
对于第3种特殊的情况,如果就有通过下标去改变数组的需求怎么办呢?可以使用VUE提供的set方法去实现:
<button @click="set">把数字1赋值为A(set方式)</button>
... ...
set() {
this.$set(this.number, 0 , "A");
}
对于直接修改数组的长度也可以用splice来实现:
<button @click="spliceLen">修改数组长度为2(splice方式)</button>
... ...
spliceLen() {
this.number.splice(2);
}
更多推荐
已为社区贡献3条内容
所有评论(0)