Vue中的$set的使用实例代码
2018-10-08 16:00
776 查看
Vue ―$set
在我们使用vue进行开发的过程中,可能会遇到一种情况:当生成vue实例后,当再次给数据赋值时,有时候并不会自动更新到视图上去;
当我们去看vue文档的时候,会发现有这么一句话:如果在实例创建之后添加新的属性到实例上,它不会触发视图更新。
如下代码,给 student对象新增 age 属性
data () { return { student: { name: '', sex: '' } } } mounted () { // ――钩子函数,实例挂载之后 this.student.age = 24 }
原因是:受 ES5 的限制,Vue.js 不能检测到对象属性的添加或删除。因为 Vue.js 在初始化实例时将属性转为 getter/setter,所以属性必须在 data 对象上才能让 Vue.js 转换它,才能让它是响应的。
要处理这种情况,我们可以使用$set()方法,既可以新增属性,又可以触发视图更新。
但是,值得注意的是,网上一些资料写的$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) }
总结
以上所述是小编给大家介绍的Vue中的$set的使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
您可能感兴趣的文章:
相关文章推荐
- 使用vue实现grid-layout功能实例代码
- 使用Vue动态生成form表单的实例代码
- 使用vue和datatables进行表格的服务器端分页实例代码
- 在Vue项目中使用d3.js的实例代码
- Vue组件中prop属性使用说明实例代码详解
- 关于在vue 中使用百度ueEditor编辑器的方法实例代码
- 使用 Vue 绑定单个或多个 Class 名的实例代码
- 在Vue中使用echarts的实例代码(3种图)
- vue.js中toast用法及使用toast弹框的实例代码
- 使用 Vue.js 仿百度搜索框的实例代码
- 在vue中使用echarts图表实例代码详解
- vue中使用echarts制作圆环图的实例代码
- 在vue中使用vue-echarts-v3的实例代码
- vue移动端裁剪图片结合插件Cropper的使用实例代码
- vue-cli+webpack在生成的项目中使用bootstrap实例代码
- 使用vue制作探探滑动堆叠组件的实例代码
- vue轮播图插件vue-awesome-swiper的使用代码实例
- vue中使用element-ui进行表单验证的实例代码
- vue2.5.2使用http请求获取静态json数据的实例代码
- vue中七牛插件使用的实例代码