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 = ‘’;

获得效果

这样即不耽误再次赋值又不耽误显示

以上为个人经验,希望能给大家一个参考,也希望大家多多支持阿兔在线工具。

点赞(0)

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部