v-once在日常开发中用的很多
只渲染元素和组件一次,随后的渲染,使用了此指令的元素/组件及其所有的子节点,都会当作静态内容并跳过,这可以用于优化更新性能。
常见用法如下
当修改input框的值时,使用了v-once指令的p元素不会随之改变,而第二个p元素时可以随之改变的
<div id="app">
<p v-once>{{msg}}</p> //msg不会改变
<p>{{msg}}</p>
<p>
<input type="text" v-model = "msg" name="">
</p>
</div>
<script type="text/javascript">
let vm = new Vue({
el : '#app',
data : {
msg : "hello"
}
});
</script>
v-once是什么
v-once 能够让标签的内容,也就是 {{str}} 中,data里面的某个数据例如str,保持在vue的data初始化之后,str的第一个值。
下面的写法
<div v-once>{{str}} </div>
<el-input v-model="str"></el-input>
str初始是’’,空字符串;
然后在created中从后端接口获得数据给str赋值:this.str = ‘aaa’;
最后在mounted中江str清空:this.str = ‘’;
获得效果
这样即不耽误再次赋值又不耽误显示
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。