在vue中动态添加属性并更新dom时碰到了如下问题。
和下面这篇博客碰到的问题一摸一样。

传送门
都是第一次Vue.set有效,之后再变动set添加的属性的值时无效。
用评论中的方法–vm.$set替代Vue.set后就一切正常了。

本着刨根问底的态度去查这两个方式的区别。

官方文档
官方文档里翻来找去,总结:vm.$set不过时Vue.set的别名。
可是效果明显不一样啊。。。
然后在StackOverflow上找到一个问答
传送门
由于对vue和整个前端这块的知识匮乏。整个看得似懂非懂。

So, .$set used to be available on all objects - it is now only available on a View Model itself. Vue.set is therefore used in those cases now when you have a reference to a reactive object but do not have a reference to the View Model it belongs to.
我理解的大致意思:Vue.set不会作用到dom更新,而vm.$set可以。
Logo

前往低代码交流专区

更多推荐