VueJS 渲染一次到一个元素

use*_*145 2 vue.js

是否可以只渲染一次到一个元素中?

假设我有一个 contenteditable div,并且只想渲染第一个值,然后在模型更改时停止重新渲染。这里只variable渲染的初始值。

<div contenteditable="true"> {{variable}} </div>

Cod*_*Cat 5

v-once

<div contenteditable="true" v-once> {{variable}} </div>
Run Code Online (Sandbox Code Playgroud)

你也可以用一个包裹它<span>

<div contenteditable="true">
  <span v-once> {{variable}} </span>
</div>
Run Code Online (Sandbox Code Playgroud)

参考:
https : //vuejs.org/v2/guide/components.html#Cheap-Static-Components-with-v-once https://vuejs.org/v2/api/#v-once


或者另一种解决方案是简单地克隆variable并且不要修改它,例如,如果您调用它readOnlyVariable

<div contenteditable="true"> {{readOnlyVariable}} </div>
Run Code Online (Sandbox Code Playgroud)