开发者社区> 问答> 正文

Vue中的$set的使用实例代码

Vue中的$set的使用实例代码

展开
收起
社区秘书 2019-12-16 14:53:47 1771 0
1 条回答
写回答
取消 提交回答
  • Vue —$set

    在我们使用vue进行开发的过程中,可能会遇到一种情况:当生成vue实例后,当再次给数据赋值时,有时候并不会自动更新到视图上去; 当我们去看vue文档的时候,会发现有这么一句话:如果在实例创建之后添加新的属性到实例上,它不会触发视图更新。 如下代码,给 student对象新增 age 属性

    data () { return { student: { name: '', sex: '' }//欢迎加入全栈开发交流圈一起学习交流:864305860 }//面向1-3年前端人员 }//帮助突破技术瓶颈,提升思维能力 mounted () { // ——钩子函数,实例挂载之后 this.student.age = 24 } 受 ES5 的限制,Vue.js 不能检测到对象属性的添加或删除。因为 Vue.js 在初始化实例时将属性转为 getter/setter,所以属性必须在 data 对象上才能让 Vue.js 转换它,才能让它是响应的。 要处理这种情况,我们可以使用$set()方法,既可以新增属性,又可以触发视图更新。 错误写法:this.$set(key,value)(ps: 可能是vue1.0的写法)

    mounted () { this.$set(this.student.age, 24) } 正确写法:this.$set(this.data,”key”,value’)

    mounted () { this.$set(this.student,"age", 24) } 结语

    感谢您的观看,如有不足之处,欢迎批评指正。

    2019-12-16 14:53:56
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
利用编译将 Vue 组件转成 React 组件 立即下载
基于VUE的单页面性能优化实践 立即下载
23-Vue.js在前端...1506518547.pdf 立即下载