Vue.js第三天学习笔记(计算属性computed)


Posted in Javascript onDecember 01, 2016

今天给大家分享下vue.js中的计算属性(computed)

示例一

computed的get属性

Vue.js第三天学习笔记(计算属性computed)

html:

<template>
 <div class="input-text">
 <input type="text" v-model='firstName'>
 <input type="text" v-model='lastName'>
 {{fullName}}
 </div>
</template>

js:

<script>
export default {
 components: {

 },
 ready: function() {

 },
 methods: {
 },
 data() {
 return {
 firstName: 'Foo',
 lastName: 'Bar'
 }
 },
 computed: {
 fullName: {
 // getter
 get: function() {
 return this.firstName + ' and ' + this.lastName
 },
 // setter
 set: function(newValue) {
 var names = newValue.split(' and ')
 this.firstName = names[0]
 this.lastName = names[names.length - 1]
 }
 }
 }
}
</script>

示例二

computed的get和set属性:

Vue.js第三天学习笔记(计算属性computed)

html:

<template>
 <div class="input-text">
 <input type="text" v-model='a'>{{b}}
 <input type="button" value="修改b的值" @click='updateData'>
 <input type="text" v-model='c'>
 </div>
</template>

js:

<script>
export default {
 components: {
 },
 ready: function() {
 },
 methods: {
 updateData:function(){
 this.b=this.b;//给 b 重新赋值时就会调用 b 的 set 属性,从而改变 c 的值
 }
 },
 data() {
 return {
 a:'1:30',
 c:''
 }
 },
 computed: {
 b:{
 get: function() {//通过a的值改变b的值
 var time=this.a;
 time = time ? time.split(':') : '';
 let hours = time[0];
 let minutes = time[time.length - 1];
 return parseInt(hours) * 60 + parseInt(minutes);
 },
 set:function(newValue){//通过b值的改变,设置 c 的值
 let newTimes = newValue;
 let hoursTime = parseInt(newTimes) / 60;
 let minutesTime = parseInt(newTimes) % 60;
 newTimes = newTimes + '';
 hoursTime = hoursTime + '';
 hoursTime = hoursTime ? hoursTime.split('.') : '';
 this.c = hoursTime[0] + ':' + minutesTime;
 console.log(hoursTime[0] + ':' + minutesTime);
 }
 }
 }
}
</script>

本文已被整理到了《Vue.js前端组件学习教程》,欢迎大家学习阅读。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
js改变img标签的src属性在IE下没反应的解决方法
Jul 23 Javascript
JavaScript识别网页关键字并进行描红的方法
Nov 09 Javascript
JavaScript判断页面加载完之后再执行预定函数的技巧
May 17 Javascript
深入理解JavaScript 函数
Jun 06 Javascript
jquery仿ps颜色拾取功能
Mar 08 Javascript
vue.js+Echarts开发图表放大缩小功能实例
Jun 09 Javascript
JavaScript中递归实现的方法及其区别
Sep 12 Javascript
基于cropper.js封装vue实现在线图片裁剪组件功能
Mar 01 Javascript
深入理解Vue.js轻量高效的前端组件化方案
Dec 10 Javascript
Vue路由之JWT身份认证的实现方法
Aug 26 Javascript
ES5 模拟 ES6 的 Symbol 实现私有成员功能示例
May 06 Javascript
JS模拟实现京东快递单号查询
Nov 30 Javascript
实例解析jQuery中如何取消后续执行内容
Dec 01 #Javascript
一个非常好用的文字滚动的案例,鼠标悬浮可暂停[两种方案任选]
Dec 01 #Javascript
jQuery中ajax错误调试分析
Dec 01 #Javascript
JQuery学习总结【二】
Dec 01 #Javascript
Vue.js第二天学习笔记(vue-router)
Dec 01 #Javascript
JavaScript给每一个li节点绑定点击事件的实现方法
Dec 01 #Javascript
Vue方法与事件处理器详解
Dec 01 #Javascript
You might like
php生成zip压缩文件的方法详解
2013/06/09 PHP
Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
2013/06/14 PHP
php生成静态页面的简单示例
2014/04/17 PHP
深入理解PHP内核(二)之SAPI探究
2015/11/10 PHP
php实现异步将远程链接上内容(图片或内容)写到本地的方法
2016/11/30 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
discuz论坛更换域名,详细文件修改步骤
2020/12/09 PHP
不间断滚动JS打包类,基本可以实现所有的滚动效果,太强了
2007/12/08 Javascript
javascript 节点遍历函数
2010/03/28 Javascript
js控制分页打印、打印分页示例
2014/02/08 Javascript
一个网页标题title的闪动提示效果实现思路
2014/03/22 Javascript
一个简单的动态加载js和css的jquery代码
2014/09/01 Javascript
jquery点击改变class并toggle的实现代码
2016/05/15 Javascript
由简入繁实现Jquery树状结构的方法(推荐)
2016/06/10 Javascript
jQuery实现的网格线绘制方法
2016/06/20 Javascript
ES6记录异步函数的执行时间详解
2016/08/31 Javascript
JavaScript实现计算多边形质心的方法示例
2018/01/31 Javascript
浅谈小程序 setData学问多
2019/02/20 Javascript
微信小程序swiper禁止用户手动滑动代码实例
2019/08/23 Javascript
超简单的微信小程序轮播图
2019/11/22 Javascript
python内存管理分析
2015/04/08 Python
Python验证码识别处理实例
2015/12/28 Python
Python Series从0开始索引的方法
2018/11/06 Python
pyqt5 实现在别的窗口弹出进度条
2019/06/18 Python
用Python解数独的方法示例
2019/10/24 Python
Python3.5 win10环境下导入kera/tensorflow报错的解决方法
2019/12/19 Python
国际知名设计师时装商店:Coggles
2016/09/05 全球购物
瑞典香水、须后水和美容产品购物网站:Parfym-Klick.se
2019/12/29 全球购物
卫校中专生个人自我评价
2013/09/19 职场文书
上课迟到检讨书100字
2014/01/11 职场文书
2015年实习生工作总结报告
2015/04/28 职场文书
刑事案件上诉状
2015/05/23 职场文书
推销搭讪开场白
2015/05/28 职场文书
给校长的建议书范文
2015/09/14 职场文书
教师纪律作风整顿心得体会
2016/01/23 职场文书
评估“风险”创业计划的几大要点
2019/08/12 职场文书