vue的计算和监视属性,附一小实例
- <div id="demo">
- 姓: <input type="text" placeholder="First Name" v-model="firstName">
- 名: <input type="text" placeholder="Last Name" v-model="lastName">
- <!--fullName1是根据fistName和lastName计算产生-->
- 姓名1(单向): <input type="text" placeholder="Full Name1" v-model="fullName1">
- 姓名2(单向): <input type="text" placeholder="Full Name2" v-model="fullName2">
- 姓名3(双向): <input type="text" placeholder="Full Name3" v-model="fullName3">
- </div>
- <script type="text/javascript" src="../js/vue.js"></script>
- <script type="text/javascript">
- const vm = new Vue({
- el: '#demo',
- data: {
- firstName: 'A',
- lastName: 'B',
- fullName2: 'A-B'
- },
- // 计算属性配置: 值为对象
- computed: {//什么时候执行?当fullName1被改变或者与其相关的属性被改变都会执行
- fullName1 () { // 属性的get()
- console.log('fullName1()', this)
- return this.firstName + '-' + this.lastName //this 这里代表着vm实例
- },
- fullName3: {
- // 当获取当前属性值时自动调用, 将返回值(根据相关的其它属性数据)作为属性值
- get () {
- console.log('fullName3 get()')
- return this.firstName + '-' + this.lastName
- },
- // 当属性值发生了改变时自动调用, 监视当前属性值变化, 同步更新相关的其它属性值
- set (value) {// fullName3的最新value值 A-B23
- console.log('fullName3 set()', value)
- // 更新firstName和lastName
- const names = value.split('-')
- this.firstName = names[0]
- this.lastName = names[1]
- }
- }
- },
- watch: {
- // 配置监视firstName
- firstName: function (value) { // 相当于属性的set
- console.log('watch firstName', value)
- // 更新fullName2
- this.fullName2 = value + '-' + this.lastName
- }
- }
- })
- // 监视lastName
- vm.$watch('lastName', function (value) {
- console.log('$watch lastName', value)
- // 更新fullName2
- this.fullName2 = this.firstName + '-' + value
- })
vue的计算和监视属性,附一小实例的更多相关文章
- VUE:计算属性和监视
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- Vue 计算属性 && 监视属性
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8" /> 5 & ...
- Vue的计算属性,监视属性代码理解
1.计算属性:在computed属性对象中定义计算属性的方法,在页面中使用{{方法名}}来显示计算的结果 //计算属性 computed:{ // 计算属性值的一个方法,方法的返回值是属性值,初始化显 ...
- vue生命周期以及vue的计算属性
一.Vue生命周期(vue实例从创建到销毁的过程,称为生命周期,共有八个阶段) 1.beforeCreate :在实例初始化之后,数据观测 (data observer) 和 event/watche ...
- vue的计算属性computed和监听器watch
<template> <div> this is A.vue <br> <!--计算属性--> <label for="msg" ...
- Vue的计算属性和侦听器
1 计算属性:他是根据对象已有的属性计算出新的属性值.具有缓存的功能,如果原始属性不变,则用缓存.否则,重新计算. 前端 <form> <label>姓</label&g ...
- Vue.js 计算属性是什么
Vue.js 计算属性是什么 一.总结 一句话总结: 模板 表达式 维护 在模板中表达式非常便利,但是它们实际上只用于简单的操作.模板是为了描述视图的结构.在模板中放入太多的逻辑会让模板过重且难以维护 ...
- vue 的计算属性computed自我理解
类型:{ [key: string]: Function | { get: Function, set: Function } } 计算属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算.注意, ...
- vue的计算属性
在模板中写入过多的逻辑使模板过重且难以维护.因此有了计算属性(computed)的产生. 你可以像绑定普通属性一样在模板中绑定计算属性,vue知道计算属性中的函数依赖data中的数据.所以当data中 ...
随机推荐
- 高级工程师->架构师
1. 分解等级 技术人员典型的发展路径基本上都是下面的这个模式: 1) 0 ~1年:菜鸟,需要别人手把手来教 2)1 ~ 3年:初级,需要别人带你做 3)3 ~ 5年:高级,能独当一面,可以带初级技术 ...
- Python之图片缩放功能实现
这几天由于有项目在做,自己的学习部分然后没有很充足的时间,但是这些零碎的时间也是很宝贵的,所以还是继续学我的python,我很喜欢这个语言,因为简洁,开发环境简单,更多的事,功能灰常的强大,所以好多有 ...
- P2948 [USACO09OPEN]滑雪课Ski Lessons
题意:Bessie去滑雪,限时T,滑雪场有S节课 每节课开始于$m_i$,长度为$l_i$,可以将Bessie的能力值变成$a_i$(注意是变成不是增加) 有n个滑雪坡,去滑雪需要$c_i$的能力,并 ...
- [SCOI2010]序列操作 BZOJ1858 线段树
题目描述 lxhgww最近收到了一个01序列,序列里面包含了n个数,这些数要么是0,要么是1,现在对于这个序列有五种变换操作和询问操作: 0 a b 把[a, b]区间内的所有数全变成0 1 a b ...
- MySQL数据查询结果导出生成文件
select url from news where url like "%美女%" into outfile "/导出的文件路径" : 在这里有个坑,对于 ...
- POJ1056 IMMEDIATE DECODABILITY & POJ3630 Phone List
题目来源:http://poj.org/problem?id=1056 http://poj.org/problem?id=3630 两题非常类似,所以在这里一并做了. 1056题目大意: 如果一 ...
- Mysql-proxy代理内网数据库
Mysql-proxy 参考:https://segmentfault.com/q/1010000000394160 情景分析:首先您需要正在使用UCloud云主机(uhoust)以及云数据库(udb ...
- 利用SharePoint项目改造的Web项目问题——Windows身份验证
最近领导交给一个项目:改造现有的SharePoint项目.UI层是做好的,只需要把实现的所有接口方法重新实现一遍,改造成Web版的实现方式. 现在要做基于Windows身份认证的登陆: 配置IIS—— ...
- 关于c语言的位运算&,|,^(看懂汉字的都能看懂)
其中|,&可以当作逻辑运算符,当|,&当成逻辑运算符时,与||,&&的用法基本相似,&&,||运算时会当前面的表达式能够决定整个表达式,则不进行对后面的 ...
- Educational Codeforces Round 11 B
Description Consider 2n rows of the seats in a bus. n rows of the seats on the left and n rows of th ...