今天给大家分享下vue.js中的计算属性(computed)
示例一
computed的get属性
html:
{{fullName}}
js:
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]
}
}
}
}
示例二
computed的get和set属性:
html:
{{b}}
js:
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);
}
}
}
}
本文已被整理到了《》,欢迎大家学习阅读。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。