vue--监听器
vue当中的属性,侦听器watch
computed可以根据数据的变化而变化,而watch也具备同样的功能
既然这么相似,那么两者的区别是什么呢
首先是执行顺序上有一些细微差别,dom加载完成后将立即执行computed再watch
触发事件后,若有methods则先执行再watch
其次watch是更通用的响应数据变化的属性,如果数据变化是异步的,用watch较合适
接下来了解下该如何使用吧
<div id="nieo">
<input v-model="year">
<input v-model="month">
<div id="birth">出生年月:{{year}}年 {{month}}月<div>
<div>输入次数:{{count}}</div>
<div>
我们希望能实现一个功能,可以实时对输入框的输入次数计数并显示。
之前我们用computed把数据的改变绑定到dom上,这次就用watch来实现这个需求。
watch就像vue中监控或开关一样,只要有某个动作,就会行动。
接下来写js部分的代码:
var change = new Vue({
el:"#nieo",
data:{
year:,
month:,
count:
},
computed:{
birth () {
return this.year + "." + this.month
}
},
watch:{
year () {
return this.count++
},
month () {
return this.count++
}
}
})
完成以后,打开网页看看效果,是不是每次输入都会让count的数值发生变化呢。
注意,watch的使用可以再简化一些,比如像这样:
watch:{
birth () {
return this.count++
}
}
为什么可以这样写,computed和watch的执行顺序,birth的数据由year和month组成
任何一个发生变化都会使得computed发生作用,而watch又在其后执行
因此,监听birth也能达到同样的效果
原文:https://mp.weixin.qq.com/s/MT2uutHhfkl-TJDHzu3JNQ
vue--监听器的更多相关文章
- Vue——监听器watch
使用watch来侦听data中数据的变化,watch中的属性(watch是对象格式)一定是data 中已经存在的数据. 使用场景:数据变化时执行异步或开销比较大的操作. 典型应用:http://www ...
- vue监听器watch & 计算属性computed
侦听器watch vue中watch是用来监听vue实例中的数据变化 watch监听时有几个属性: handle:其值是一个回调函数,就是监听对象对话的时候需要执行的函数 deep:其值true 或者 ...
- Vue 监听器和计算属性到底有什么不同?
各自的适用场景 计算属性临时快照 官方文档对于计算属性提到了一个重要的点子--"临时快照"(可能就是前面说的计算属性缓存),每当源状态发生变化时,就会创建一个新的快照. 有时候创建 ...
- Vue.js-05:第五章 - 计算属性与监听器
一.前言 在 Vue 中,我们可以很方便的将数据使用插值表达式( Mustache 语法)的方式渲染到页面元素中,但是插值表达式的设计初衷是用于简单运算,即我们不应该对差值做过多的操作.当我们需要对差 ...
- vue的计算属性computed和监听器watch
<template> <div> this is A.vue <br> <!--计算属性--> <label for="msg" ...
- Vue学习3:计算属性computed与监听器
下面是计算属性相关代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...
- Vue(基础三)_监听器与计算属性
一.前言 本文主要涉及: 1.watch()监听单个属性 2.computed可以监听多个属性 3.点击li标签切换音乐案例 二.主要内容 1.watch()监听器(监听单一数据) (1)监听 ...
- VUE 学习笔记 四 计算属性和监听器
1.计算属性 对于任何复杂逻辑,你都应当使用计算属性 <div id="example"> <p>Original message: "{{ me ...
- Vue双向绑定的实现原理系列(三):监听器Observer和订阅者Watcher
监听器Observer和订阅者Watcher 实现简单版Vue的过程,主要实现{{}}.v-model和事件指令的功能 主要分为三个部分 github源码 1.数据监听器Observer,能够对数据对 ...
- vue 双向数据绑定的实现学习(二)- 监听器的实现
废话:上一篇https://www.cnblogs.com/adouwt/p/9928278.html 提到了vue实现的基本实现原理:Object.defineProperty() -数据劫持 和 ...
随机推荐
- Django---路由、配置和静态文件简介
路由.配置文件.静态文件 一.url配置 二.配置文件 三.静态文件 回到顶部 一.url配置 1.url的配置过程 2.注意点 Django默认url配置风格,实在用户访问的路径后面加 \ 用户在主 ...
- Java面试题和解答(三)
1.这段代码大多数情况下运行正常,但是某些情况下会出问题.什么时候会出现什么问题?如何修正? public class MyStack { private List<String> lis ...
- java框架之SpringBoot(17)-监控管理
介绍 SpringBoot 提供了监控管理功能的场景启动器,它可以为我们提供准生产环境下的应用监控和管理功能.我们可以通过HTTP.JMX.SSH协议来进行操作,自动得到审计.健康及指标信息等. 使用 ...
- jq中get()和eq()的区别
一直弄混淆的获取元素的方法,现整理一下: :eq(index) 选择器选取带有指定 index 值的元素. index 值从 0 开始,所有第一个元素的 index 值是 0(不是 1). 如:$(& ...
- iphone X 底部留白 之 ionic3 项目
在全局css中加入 @media only screen and (device-width: 375px) and (device-height: 812px) and (-webkit- ...
- debug apk logCat
Microsoft Windows [版本 10.0.15063](c) 2017 Microsoft Corporation.保留所有权利. C:\Users\Administrator>ad ...
- Debian setup the time
sudo gedit /etc/default/hwclock将 井HWCLOCKACCESS=yes 和 井HCTOSYS_DEVICE=rtc0 前的 井 符号去掉,再改 rtc0 为 rtc1 ...
- Django框架详细介绍---请求流程
Django请求流程图 1.客户端发送请求 2.wsgiref是Django封装的套接字,它将客户端发送过来的请求(请求头.请求体封装成request) 1)解析请求数据 2)封装响应数据 3.中间件 ...
- Godot-富文本
作用:添加链接(比如赞助网站,或者相关站点什么的) 效果如下: (引用Godot官网) Introduction RichTextLabel allows the display of complex ...
- racle SQL性能优化
(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效): Oracle的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先 ...