计算属性 computed
计算属性
new Vue({
data...
computed:{
计算属性: {
// 对象形式
get(){
//getter
return ...
} set(value){
// setter
}
}
}
})
确定不需要写setter 的时候,可以简写↓
new Vue({
data...
computed:{
计算属性(){
//函数形式 这个就相当于getter
return ... // 必须写return
}
}
})
计算属性(){ 这里面不能开启异步任务 如setTimeout定时器 }
例:
<div>
{
{fullname}}
</div>
<script>
Vue.config.productionTip = false
const vm = new Vue({
el:'div',
data() {
return {
firstname:'张',
lastname:'三'
}
},
computed: {
fullname: {
get() {
return this.firstname+this.lastname
},
set(value) {
console.log('调用了计算属性的setter,value为:', value);
this.firstname = value.substring(0,1)
this.lastname = value.substring(1)
}
}