<template>
<div class="hello">
<p>{{ message }}</p>
<botton @click="handleClick">改变message</botton>
</div>
</template>
<script>
export default {
name: "HelloWorld",
props: {
firstName: String
},
data() {
return {
message: "文本"
};
},
computed: {
fullName() {
return this.firstName + this.message; // 第 23 行
},
},
methods: {
handleClick() {
this.message = "14";
},
}
};
</script>
这种情况是不会走到第23行的,因为虽然重新走render了, 但是计算属性fullName在模版里没有用到,也就不会重新取值,也就走不到第23行。
<template>
<div class="hello">
<p>{{ message }}</p>
<botton @click="handleClick">改变message</botton>
</div>
</template>
<script>
export default {
name: "HelloWorld",
props: {
firstName: String
},
data() {
return {
message: "文本"
};
},
computed: {
fullName() {
return this.firstName + this.message; // 第 23 行
},
},
methods: {
handleClick() {
this.message = "14";
this.fullName; // 显性的读一下计算属性的值
},
}
};
</script>
显性的读一下计算属性的值,后变会走到第23行,而且message的值已经变成了"14"