过滤器filters
可被用于一些常见的文本格式化
获取不到this
能够承受参数
计算属性comuted
对于任何简单逻辑,你都该当应用计算属性
计算缓存
能够获取this
不能够承受参数
办法methods
…
侦听器watch
当须要在数据变动时执行异步或开销较大的操作时
!!!慎用
<template>
<div>
<div>{{status}}</div>
<div>{{statusMethod(status)}}</div>
<div>{{statusComputed}}</div>
<div>{{status | statusFilter}}</div>
<div v-if="show">{{sum}}</div>
<button @click="cliskC">click{{s}}</button>
</div>
</template>
<script>
export default {
data() {
return {
show: false,
s: '',
j: 0,
status: '2',
statusMap: {
'1': '开始',
'2': '进行中',
'3': '完结'
}
}
},
mounted() {
setTimeout(() => {
this.show = true;
}, 3000)
},
computed: {
statusComputed() {
return this.statusMap[this.status]
},
sum() {
console.log(new Date().getTime())
var sum = 0;
for(let i=0; i< 900000000; i++){
sum+=i;
}
console.log(new Date().getTime())
return sum + this.j;
}
},
methods: {
statusMethod(status) {
return this.statusMap[status]
},
cliskC() {
this.j++;
this.s = this.sum;
}
},
filters: {
statusFilter(status) {
let statusMap = {
'1': '开始',
'2': '进行中',
'3': '完结'
}
return statusMap[status]
}
}
}
</script>
发表回复