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 ...
随机推荐
- 004--linux命令tar 软硬链接
一.tar命令介绍: -c:创建一个新的tar文件 -t:列出tar文件中目录的内容 -x:从tar文件中抽取文件 -f:指定归档文件或磁带(也可能是软盘)设备(一般都要选) -v:显示所打包的文件的 ...
- ASP.NET Core MVC 2.x 全面教程__ASP.NET Core MVC 19. XSS & CSRF
存库之前先净化,净化之后再提交到数据库 刚才插入的那笔数据 把默认的Razor引擎默认的EnCode去掉.Razor默认会开启htmlEnCodding 数据恢复回来 插入数据库之前对插入的数据进行净 ...
- emacs在org-mode时输出pdf时,只输出为链接
这个找到问题了,写错格式了,输出pdf中要内嵌图像,格式要写成[[file:/home/xxx/yyy.jpg]],不能写成file:/home/xxx/yyy.jpg或者[[file:/home/x ...
- Android Fragment使用小结及介绍
目录(?)[-] 一什么是Fragment 二Fragment的生命周期 三Fragment的两种添加方式addreplace 四两种添加方式性能比较 偶记得第一次接触Fragment,觉得好牛叉的组 ...
- php,c# hamsha1
#!/usr/bin/php <?php print strtoupper(hash_hmac("sha256", "message", "ke ...
- luogu P1095守望者的逃离【dp】By cellur925
题目传送门 考虑dp,设f[i]表示到第i时间,能到达的最远距离.因为题目涉及了三种操作:1,补血消耗魔法值:2, 等待增加魔法值:3,直接向前走.而1,3和2,3的操作是可以同时进行没有冲突的,所以 ...
- (三)SpringBoot定义统一返回result对象
一:定义响应码枚举 package com.example.demo.core.ret; /** * @Description: 响应码枚举,参考HTTP状态码的语义 * @author * @dat ...
- hdu1272 小希的迷宫 基础并查集
#include <iostream> #include <cstdlib> #include <cstdio> #include <algorithm> ...
- python之yaml模块和ddt模块
aml文件是专门用来写配置文件的语言,非常简洁和强大,远比json格式方便. 在PC中新建一个yml/yaml为为缩略名的文件,输入信息见下图 新建一个py文件处理yml文件,直接处理成字典格式 缩进 ...
- Hadoop端口访问
Hadoop集群默认端口 Hadoop本地开发,9000端口拒绝访问