Vue之computed与watch的使用
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<div id="ex-computed">
<p>Original message: "{{ message}}"</p>
<p>Computed reversed message: "{{ reversedMessage }}"</p>
</div>
<div id="ex-watch">
我是练习watch的div
<input type="number" v-model="num" />
<p v-if='isOK'>两次差值已大于3,所以你看见我了~</p>
</div>
<script src="../node_modules/vue/dist/vue.js"></script>
<script>
/* 计算属性computed的用途:
模板内的表达式是便利的,但是为了方便维护,复杂的逻辑就不应该
直接放在表达式里,而应当使用计算属性。
*/
/* computed vs 方法:
下面的例子也可以定义方法,然后在表达式中调用方法来达到同样的效果。
不同的是:computed是基于它们的响应式依赖进行缓存的,在下面的例子中,
只要message没有发生改变那么多次访问reversedMessage会立即返回之前
计算的结果,使用缓存可以提高系统的性能,减少重复开销。
*/
var vm = new Vue({
el: '#ex-computed',
data: {
message: 'Hello'
},
computed: {
// 默认情况下只提供了计算属性的getter
reversedMessage: function() {
// this执行该vm实例
return this.message.split('').reverse()
.join('')
}
}
});
/* computed VS watch:
Vue提供了一种更通用的方式来观察和响应Vue实例上的数据变动:侦听属性(watch)
,watch侦听属性应该用于要从旧状态到新状态这变化过程中获取到信息或进行操作的行为,
而不应该滥用,因为在大多数情况下,使用computed或许更加合适。下面这个例子是合理使用watch的一个例子:
*/
var vm2 = new Vue({
el: "#ex-watch",
data: {
num: 1,
isOK: false
},
watch: {
num: function(newNum, oldNum) {
console.log(newNum);
if (newNum - oldNum > 3) {
this.isOK = true;
} else {
this.isOK = false;
}
}
}
})
</script>
</body>
</html>
Vue之computed与watch的使用的更多相关文章
- vue的computed属性
vue的computed属性要注意的两个地方,1,必须有return,2,使用属性不用括号 <div> <input type="text" v-model=&q ...
- Vue的Computed的使用
Vue的Computed的使用 相关Html: <!DOCTYPE html> <html lang="en"> <head> <meta ...
- vue中computed(计算属性)和watch在实现父子组件props同步时的实际区分
vue中computed和watch的对比是一个很有意思的话题. 看过官网教程以后,我们往往更倾向多使用computed.computed优点很多,却在某些时候不太适用. 今天我们就稍微讨论一下,当我 ...
- Vue中computed和watch的区别
在vue中computed和watch的真正区别是:computed产生于它的依赖,而watch产生于它的依赖的变化.只要依赖存在,我们就能访问到其对应的computed属性:但只有依赖发生了改变,我 ...
- Vue中computed分析
Vue中computed分析 在Vue中computed是计算属性,其会根据所依赖的数据动态显示新的计算结果,虽然使用{{}}模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的,在模板中放入太 ...
- vue 的 computed 属性在什么时间执行
vue 的 computed 属性在什么时间执行
- vue中computed的作用以及用法
在vue中computed是计算属性,主要作用是把数据存储到内存中,减少不必要的请求,还可以利用computed给子组件的data赋值. 参考地址:https://www.jianshu.com/p/ ...
- 关于vue的computed、filters、watch
filters 这个属性大家可能用的不是很多 因为一般的数组过滤我们用 es6的filter就能完成了 我想到一个场景,网上买书促销 满100减50 满两百减100 <input type=&q ...
- 【Vue】----- computed与watch的区别
1.computed computed是一种计算属性,用来监听属性的变化: computed里面的方法调用的时候不需要加(),并且里面的方法必须要有一个返回值: computed里面的方法不是通过事件 ...
- vue中computed计算属性与methods对象中的this指针
this 指针问题 methods与computed中的this指针 应该指向的是它们自己,可是为什么this指针却可以访问data对象中的成员呢? 因为new Vue对象实例化后data中的成员和c ...
随机推荐
- html中target的用法
- HDU 1995 汉诺塔V (水题)
题意:.. 析:2^n-i 代码如下: #pragma comment(linker, "/STACK:1024000000,1024000000") #include <c ...
- 标准WPS框架下的空间信息处理服务部署方法
笔者第一篇博客里面曾介绍过将专题图制作功能发布为WPS,但随着后面的研究,才发现那时候发布的不是真正WPS框架下的服务,而只是通过Servlet将其发布为可调用的网络服务,所以今天再具体介绍一下真正的 ...
- 洛谷 - P2261 - 余数求和
https://www.luogu.org/problemnew/show/P2261 看了一下题解,取模运算可以换成减法来做. $a\%b=a-b*\lfloor\frac{a}{b}\rfloor ...
- HDU 6183 Color it(动态开点线段树)
题目原网址:http://acm.hdu.edu.cn/showproblem.php?pid=6183 题目中文翻译: Time Limit: 20000/10000 MS (Java/Others ...
- Python 基础知识(5)
1:引用 当我们把一个变量给另一个变量赋值的时候,不是把A变量中的值给B一份,而是把A变量中的地址给了B,这就是引用.任何牵扯到等号赋值的地方,统统都是引用. a = 100 b = a id(a) ...
- MySql | 常用操作总结
创建数据库: CREATE DATABASE 数据库名; 删除数据库名: drop database <数据库名>; 选择数据库: use 数据库名; 创建数据表: CREATE TABL ...
- 简单几何(求交点) UVA 11178 Morley's Theorem
题目传送门 题意:莫雷定理,求三个点的坐标 分析:训练指南P259,用到了求角度,向量旋转,求射线交点 /*********************************************** ...
- git找不到远程库问题
git报错:Couldn't find remote ref XXXX (gitlab报错)XXXX does not appear to be a git repository Could not ...
- 定时器、线程queue、进程池和线程池
1.定时器 指定n秒后,执行任务 from threading import Timer,current_thread import os def hello(): print("%s he ...