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 相关文章推荐
JavaScript面向对象之体会[总结]
Nov 13 Javascript
让新消息在网页标题闪烁提示的jQuery代码
Nov 04 Javascript
IE8中使用javascript动态加载CSS的解决方法
Jun 17 Javascript
JavaScript数值转换的三种方式总结
Jul 31 Javascript
jquery动态加载js/css文件方法(自写小函数)
Oct 11 Javascript
高性能JavaScript DOM编程(1)
Aug 11 Javascript
JS与jQuery遍历Table所有单元格内容的方法
Dec 07 Javascript
AngularJS实现注册表单验证功能
Oct 16 Javascript
vue环形进度条组件实例应用
Oct 10 Javascript
vue-lazyload使用总结(推荐)
Nov 01 Javascript
js变量声明var使用与不使用的区别详解
Jan 21 Javascript
ES6中let、const的区别及变量的解构赋值操作方法实例分析
Oct 15 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
一首老MP3,致敬WAR3经典
2021/03/08 魔兽争霸
PHP下10件你也许并不了解的事情
2008/09/11 PHP
PHP遍历数组的几种方法
2012/03/22 PHP
php float不四舍五入截取浮点型字符串方法总结
2013/10/28 PHP
Laravel框架学习笔记(二)项目实战之模型(Models)
2014/10/15 PHP
php实现面包屑导航例子分享
2015/12/19 PHP
PHP实现多图上传和单图上传功能
2018/05/17 PHP
js中访问html中iframe的文档对象的代码[IE6,IE7,IE8,FF]
2011/01/08 Javascript
jQuery中prevUntil()方法用法实例
2015/01/08 Javascript
JQuery实现网页右侧随动广告特效
2016/01/17 Javascript
bootstrap侧边栏圆点导航
2017/01/11 Javascript
从零学习node.js之文件操作(三)
2017/02/21 Javascript
Django1.7+JQuery+Ajax验证用户注册集成小例子
2017/04/08 jQuery
微信小程序利用swiper+css实现购物车商品删除功能
2019/03/06 Javascript
JavaScript函数柯里化实现原理及过程
2020/12/02 Javascript
[06:01]刀塔次级联赛top10第一期
2014/11/07 DOTA
[01:10:03]OG vs EG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
[08:54]DOTA2-DPC中国联赛 正赛 Aster vs LBZS 选手采访
2021/03/11 DOTA
深入理解Python中的super()方法
2017/11/20 Python
pycharm修改界面主题颜色的方法
2019/01/17 Python
python 实现在shell窗口中编写print不向屏幕输出
2020/02/19 Python
python 使用raw socket进行TCP SYN扫描实例
2020/05/05 Python
Pygame的程序开始示例代码
2020/05/07 Python
纽约21世纪百货官网:Century 21
2016/08/27 全球购物
德国大型的家具商店:Pharao24.de
2016/10/02 全球购物
美国时尚配饰品牌:Dooney & Bourke
2017/11/14 全球购物
瑞典多品牌连锁店:Johnells
2021/01/13 全球购物
销售员个人求职的自我评价
2014/02/10 职场文书
计算机毕业生自荐信范文
2014/03/23 职场文书
百年校庆节目主持词
2014/03/27 职场文书
结对共建工作方案
2014/06/02 职场文书
授权委托书范文
2014/07/31 职场文书
80后创业总结的9条职场用人思想,记得收藏
2019/08/13 职场文书
Vue鼠标滚轮滚动切换路由效果的实现方法
2021/08/04 Vue.js
Netty分布式客户端处理接入事件handle源码解析
2022/03/25 Java/Android
Java Spring Boot请求方式与请求映射过程分析
2022/06/25 Java/Android