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 相关文章推荐
WEB页子窗口(showModalDialog和showModelessDialog)使用说明
Oct 25 Javascript
网页源代码保护(禁止右键、复制、另存为、查看源文件)
May 23 Javascript
jQuery-Tools-overlay 使用介绍
Jul 14 Javascript
解析js原生方法创建表格效率测试
Jul 08 Javascript
jQuery scrollFix滚动定位插件
Apr 01 Javascript
JS的框架Polymer中的dom-if和is属性使用说明
Jul 29 Javascript
简单的js表格操作
Sep 24 Javascript
jQuery、layer实现弹出层的打开、关闭功能
Jun 28 jQuery
谈谈VUE种methods watch和compute的区别和联系
Aug 01 Javascript
详解node nvm进行node多版本管理
Oct 21 Javascript
从setTimeout看js函数执行过程
Dec 19 Javascript
详解vue移动端项目的适配(以mint-ui为例)
Aug 17 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
php用header函数实现301跳转代码实例
2013/11/25 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
2016/01/12 PHP
round robin权重轮循算法php实现代码
2016/05/28 PHP
js定时器怎么写?就是在特定时间执行某段程序
2013/10/11 Javascript
JS逆序遍历实现代码
2014/12/02 Javascript
基于JS实现简单的样式切换效果代码
2015/09/04 Javascript
简单谈谈node.js 版本控制 nvm和 n
2015/10/15 Javascript
JS验证 只能输入小数点,数字,负数的实现方法
2016/10/07 Javascript
Vue.js 2.0 和 React、Augular等其他前端框架大比拼
2016/10/08 Javascript
react-router中的属性详解
2017/06/01 Javascript
JS实现数组简单去重及数组根据对象中的元素去重操作示例
2018/01/05 Javascript
详解webpack之scss和postcss-loader的配置
2018/01/09 Javascript
小程序转发探索示例
2019/02/19 Javascript
vue 百度地图(vue-baidu-map)绘制方向箭头折线实例代码详解
2020/04/28 Javascript
javascript实现拼图游戏
2021/01/29 Javascript
python实现sublime3的less编译插件示例
2014/04/27 Python
python3实现TCP协议的简单服务器和客户端案例(分享)
2017/06/14 Python
python3解析库BeautifulSoup4的安装配置与基本用法
2018/06/26 Python
分析python请求数据
2018/08/19 Python
python 使用socket传输图片视频等文件的实现方式
2019/08/07 Python
Python修改列表值问题解决方案
2020/03/06 Python
Python使用Selenium实现淘宝抢单的流程分析
2020/06/23 Python
python mongo 向数据中的数组类型新增数据操作
2020/12/05 Python
怎样声明接口
2014/09/19 面试题
大学生自我评价怎样写好
2013/10/23 职场文书
县优秀教师事迹材料
2014/01/31 职场文书
出纳试用期自我鉴定
2014/04/07 职场文书
大学生党员自我评价范文
2014/04/09 职场文书
贷款担保申请书
2014/05/20 职场文书
媒矿安全生产承诺书
2014/05/23 职场文书
大学迎新标语
2014/06/26 职场文书
大专学生求职自荐信
2014/07/06 职场文书
优秀护士事迹材料
2014/12/25 职场文书
三下乡活动心得体会
2016/01/23 职场文书
2016廉政教育学习心得体会
2016/01/25 职场文书
海贼王十大潜力果实,路飞仅排第十,第一可毁世界(震震果实)
2022/03/18 日漫