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


Posted in Javascript onOctober 08, 2018

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的使用,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JS 密码强度验证(兼容IE,火狐,谷歌)
Mar 15 Javascript
Javascript MVC框架Backbone.js详解
Sep 18 Javascript
Javascript定义类(class)的三种方法详解
Mar 13 Javascript
jquery超简单实现手风琴效果的方法
Jun 05 Javascript
每天一篇javascript学习小结(RegExp对象)
Nov 17 Javascript
JavaScript中Array的实用操作技巧分享
Sep 11 Javascript
JS开发中基本数据类型具体有哪几种
Oct 19 Javascript
微信小程序自动客服功能
Nov 02 Javascript
js异步上传多张图片插件的使用方法
Oct 22 Javascript
写gulp遇到的ES6问题详解
Dec 03 Javascript
axios携带cookie配置详解(axios+koa)
Dec 28 Javascript
Electron-vue开发的客户端支付收款工具的实现
May 24 Javascript
js根据json数据中的某一个属性来给数据分组的方法
Oct 08 #Javascript
基于Angular中ng-controller父子级嵌套的相关属性详解
Oct 08 #Javascript
Bootstrap fileinput 上传新文件移除时触发服务器同步删除的配置
Oct 08 #Javascript
angularJs提交文本框数据到后台的方法
Oct 08 #Javascript
详解webpack之图片引入-增强的file-loader:url-loader
Oct 08 #Javascript
在angularJs中进行数据遍历的2种方法
Oct 08 #Javascript
webpack之引入图片的实现及问题
Oct 08 #Javascript
You might like
laravel容器延迟加载以及auth扩展详解
2015/03/02 PHP
使用 PHP Masked Package 屏蔽敏感数据的实现方法
2019/10/15 PHP
PHP设计模式(三)建造者模式Builder实例详解【创建型】
2020/05/02 PHP
一段非常简单的让图片自动切换js代码
2006/11/10 Javascript
javascript 原型继承介绍
2011/08/30 Javascript
Ext JS 4官方文档之三 -- 类体系概述与实践
2012/12/16 Javascript
window.print打印指定div指定网页指定区域的方法
2014/08/04 Javascript
8个超实用的jQuery功能代码分享
2015/01/08 Javascript
jQuery对象初始化的传参方式
2015/02/26 Javascript
AngularJS基础知识笔记之过滤器
2015/05/10 Javascript
JavaScript的Number对象的toString()方法
2015/12/18 Javascript
jQuery实现获取table表格第一列值的方法
2016/03/01 Javascript
字太多用...代替的方法(两种)
2017/03/15 Javascript
深入学习 JavaScript中的函数调用
2017/03/23 Javascript
python数据结构之二叉树的建立实例
2014/04/29 Python
python实现获取客户机上指定文件并传输到服务器的方法
2015/03/16 Python
Python文件的读写和异常代码示例
2017/10/31 Python
详解Python函数式编程—高阶函数
2019/03/29 Python
树莓派动作捕捉抓拍存储图像脚本
2019/06/22 Python
django解决订单并发问题【推荐】
2019/07/31 Python
pandas 选取行和列数据的方法详解
2019/08/08 Python
Python 多线程搜索txt文件的内容,并写入搜到的内容(Lock)方法
2019/08/23 Python
使用python实现对元素的长截图功能
2019/11/14 Python
python爬虫开发之PyQuery模块详细使用方法与实例全解
2020/03/09 Python
Python3 中sorted() 函数的用法
2020/03/24 Python
最新PyCharm从安装到PyCharm永久激活再到PyCharm官方中文汉化详细教程
2020/11/17 Python
Otticanet英国:最顶尖的世界名牌眼镜, 能得到打折季的价格
2019/02/10 全球购物
Molly Bracken法国电子商店:法国女性时尚品牌
2019/07/24 全球购物
大型晚会策划方案
2014/02/06 职场文书
技校毕业生个人学习的自我评价
2014/02/21 职场文书
《陈涉世家》教学反思
2014/04/12 职场文书
安全保证书范文
2014/04/29 职场文书
艺术学院毕业生求职信
2014/07/09 职场文书
农村老人去世追悼词
2015/06/23 职场文书
创业计划书之零食店(进口)
2019/09/24 职场文书
【海涛DOTA】D-cup邀请赛NV.cn vs DT.Love
2022/04/01 DOTA