<!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>

最新文章

  1. 关于Linux和Windows下部署mysql.data.dll的注册问题
  2. mysq l错误Table ‘./mysql/proc’ is marked as crashed and should be repaired
  3. java程序性能优化
  4. step by step install Caffe
  5. [LintCode] Maximal Rectangle 最大矩形
  6. 使用kettle转换中的JavaScript对密码进行加密和解密
  7. centos6.5安装mysql记录
  8. BZOJ 1827: [Usaco2010 Mar]gather 奶牛大集会 树形DP
  9. OpenJudge 2747 数字方格
  10. Python:字典
  11. Java基础知识强化之集合框架笔记27:ArrayList集合练习之去除ArrayList集合中的重复字符串元素
  12. libeXosip2(2) -- General purpose API.
  13. 我用的比较少的CSS选择器
  14. 图的DFS递归和非递归
  15. 关于高性能javascript 笔记
  16. 201621123031 《Java程序设计》第14周学习总结
  17. 洛谷P2319 [HNOI2006]超级英雄
  18. 网络相关配置,SSH服务,bash, 元字符
  19. Spring详解(六)------AspectJ 实现AOP
  20. [redis] 与redis cluster有关的学习笔记

热门文章

  1. python mixin到底是什么 django
  2. C++ C# 默认对齐是8字节
  3. 黑客攻防技术宝典web实战篇:工具web服务器习题
  4. LuoguP3964 [TJOI2013]松鼠聚会【切比雪夫距离/前缀和】
  5. websocket实现单聊
  6. 洛谷p2922[USACO08DEC]秘密消息Secret Message
  7. Codeforces Round #323 (Div. 2)
  8. JAVA线程操作常见面试题 包括不使用内部类对多个线程加减1
  9. AIX系统常用命令
  10. XHTML 1.0 的三种 XML 文档类型 DOCTYPE