vue中的$set

当生成vue实例后,当再次给数据赋值时,有时候并不会自动更新到视图上去;
(如果在实例创建之后添加新的属性到实例上,它不会触发视图更新。)

原因是:

受 ES5 的限制,Vue.js 不能检测到对象属性的添加或删除。因为 Vue.js 在初始化实例时将属性转为 getter/setter,所以属性必须在 data 对象上才能让 Vue.js 转换它,才能让它是响应的。

所以我们可以使用$set方法 这样可以做到既新增属性又做到视图更新
1.通过Vue.set方法设置data属性
Vue.set(data,'sex', '男')

2.或者是使用this.$set(this.data,”key”,value’)

https://cn.vuejs.org/v2/api/#Vue-set
(vue.js官网)里面有vue.set的详细说明

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在我们使用vue进行开发的过程中,可能会遇到一种情况:当生成vue实例后,当再次给数据赋值时,有时候并不会自动更新...
    e_payne阅读 23,581评论 17 5
  • Vue.set()在methods中也可以写成this.$set() 这个组件最后显示的界面如下: 当点击按钮之后...
    wxyzcctn阅读 3,585评论 0 4
  • 在对于一个快30岁的女人还没有找到自己得归属的时候,是一件多么可悲的事情,在家人的安排下,一次次的相亲,又一...
    夏季茉的花阅读 643评论 0 0
  • 1.Linux 2.MySQL 3.Hadoop 4.Hadoop常用操作 问题:使用MapReduce实现joi...
    CrUelAnGElPG阅读 422评论 0 0
  • 斜阳在云端汹涌 野草在风中凌乱 远处的房子 近处的湖面 变幻的光线 画面太美 犹如此刻 喜悦又忧伤的心情
    桃花6652阅读 300评论 0 5