简单了解Vue computed属性及watch区别


Posted in Javascript onJuly 10, 2020

自己的理解:

1. computed用来监控自己定义的变量,该变量不在data里面声明,直接在computed里面定义,然后就可以在页面上进行双向数据绑定展示出结果或者用作其他处理;

2. computed比较适合对多个变量或者对象进行处理后返回一个结果值,也就是数多个变量中的某一个值发生了变化则我们监控的这个值也就会发生变化,举例:购物车里面的商品 列表和总金额之间的关系,只要商品列表里面的商品数量发生变化,或减少或增多或删除商品,总金额都应该发生变化。这里的这个总金额使用computed属性来进行计算是最好 的选择

与watch之间的区别:

刚开始总是傻傻分不清到底在什么时候使用watch,什么时候使用computed。这里大致说一下自己的理解:

watch主要用于监控vue实例的变化,它监控的变量当然必须在data里面声明才可以,它可以监控一个变量,也可以是一个对象,但是我们不能类似这样监控,比如:

watch:{
goodsList.price(newVal,oldVal){
 //监控商品列表中是商品价格
}
}

这样会报错。只能监控整个对象或单个变量,如下所示:

data(){



return {





example0:"",





example1:"",





example2:{
 





inner0:1, 



 
      
 innner1:2 



 
      }



}


},
watch:{
 example0(newVal,oldVal){//监控单个变量
   ……
 },example2(newVal,oldVal){//监控对象
   ……
 },
}

watch一般用于监控路由、input输入框的值特殊处理等等,它比较适合的场景是一个数据影响多个数据

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
如何实现动态删除javascript函数
May 27 Javascript
鼠标右击事件代码(asp.net后台)
Jan 27 Javascript
jQuery为iframe的body添加click事件的实现代码
Apr 07 Javascript
仅IE9/10同时支持script元素的onload和onreadystatechange事件分析
Apr 27 Javascript
jQuery源码分析之Callbacks详解
Mar 13 Javascript
PHP+mysql+Highcharts生成饼状图
May 04 Javascript
JQ中$(window).load和$(document).ready区别与执行顺序
Mar 01 Javascript
微信小程序 input输入及动态设置按钮的实现
Oct 27 Javascript
vue2.0 父组件给子组件传递数据的方法
Jan 15 Javascript
基于JS实现数字动态变化显示效果附源码
Jul 18 Javascript
Vue中消息横向滚动时setInterval清不掉的问题及解决方法
Aug 23 Javascript
Vue组件简易模拟实现购物车
Dec 21 Vue.js
通过实例解析chrome如何在mac环境中安装vue-devtools插件
Jul 10 #Javascript
基于vue+element实现全局loading过程详解
Jul 10 #Javascript
JS sort方法基于数组对象属性值排序
Jul 10 #Javascript
JavaScript this指向相关原理及实例解析
Jul 10 #Javascript
JavaScript indexOf()原理及使用方法详解
Jul 09 #Javascript
如何在postman测试用例中实现断言过程解析
Jul 09 #Javascript
解决qrcode.js生成二维码时必须定义一个空div的问题
Jul 09 #Javascript
You might like
php 遍历显示文件夹下所有目录、所有文件的函数,没有分页的代码
2008/11/14 PHP
解析PHP中的内存管理,PHP动态分配和释放内存
2013/06/28 PHP
php生成年月日下载列表的方法
2015/04/24 PHP
thinkphp5.1框架模板布局与模板继承用法分析
2019/07/19 PHP
php实例化一个类的具体方法
2019/09/19 PHP
laravel csrf排除路由,禁止,关闭指定路由的例子
2019/10/21 PHP
JavaScript CSS 修改学习第四章 透明度设置
2010/02/19 Javascript
基于jquery的一个OutlookBar类,动态创建导航条
2010/11/19 Javascript
jquery中使用$(#form).submit()重写提交表单无效原因分析及解决
2013/03/25 Javascript
IE8中使用javascript动态加载CSS的解决方法
2014/06/17 Javascript
JS实现屏蔽shift,Ctrl,alt等功能键的方法
2015/06/01 Javascript
JS实现点击按钮控制Div变宽、增高及调整背景色的方法
2015/08/05 Javascript
js模拟淘宝网的多级选择菜单实现方法
2015/08/18 Javascript
angularjs实现多张图片上传并预览功能
2017/02/24 Javascript
weui框架实现上传、预览和删除图片功能代码
2017/08/24 Javascript
在vue中使用v-bind:class的选项卡方法
2018/09/27 Javascript
详解@angular/cli 改变默认启动端口两种方式
2018/11/29 Javascript
vue-router实现嵌套路由的讲解
2019/01/19 Javascript
Python3 XML 获取雅虎天气的实现方法
2018/02/01 Python
Python给定一个句子倒序输出单词以及字母的方法
2018/12/20 Python
Numpy之random函数使用学习
2019/01/29 Python
PyCharm导入python项目并配置虚拟环境的教程详解
2019/10/13 Python
python 实现按对象传值
2019/12/26 Python
Python3 获取文件属性的方式(时间、大小等)
2020/03/12 Python
Opencv常见图像格式Data Type及代码实例
2020/11/02 Python
CSS3——齿轮转动关键代码
2013/05/02 HTML / CSS
HTML5使用Audio标签实现歌词同步的效果
2016/03/17 HTML / CSS
HTML5 表单验证失败的提示语问题
2017/07/13 HTML / CSS
2014年党员自我评议对照检查材料
2014/09/20 职场文书
班子成员四风问题自我剖析材料
2014/09/29 职场文书
2014年乡镇工作总结
2014/11/21 职场文书
离职感谢信
2015/01/21 职场文书
实名检举信范文
2015/03/02 职场文书
暑期社会实践新闻稿
2015/07/17 职场文书
使用Django实现商城验证码模块的方法
2021/06/01 Python
JavaScript高级程序设计之变量与作用域
2021/11/17 Javascript