用v-once禁止二次渲染

用v-once禁止二次渲染

先看代码:
用v-once禁止二次渲染
按照我们对对代码的理解,代码是从上往下一行一行执行的。
1处,程序从vue中获取title数据,输出"你好",然后执行2,在2这里,去调用sayHello()函数,调用methods方法中的sayHello()函数。修改title数据值为"你好2",然后返回“你好2”,所以按照这种理解,结果应该是:
用v-once禁止二次渲染
但是实际的输出结果是:
用v-once禁止二次渲染

原因在于title被二次渲染了。这里需要理解上一节所讲的,需要理解vue模板的概念。我们编写的html代码和最后呈现给我们的html代码不是一样的。我们写的html代码,经过中间层vue进行渲染后,才能生成最终呈现给我们的html代码。

在这里,我们为了避免title被二次渲染,需要用到v-once指令,方法是:
用v-once禁止二次渲染
将v-once指令插入html之后,该标签内的所有内容都只能被渲染一次,后期它的数据被改变了,也不会呈现在这里。