vue中v-cloak解决刷新或者加载出现闪烁显示变量问题

2023-03-02 19:23:37 浏览数 (1)

问题:

当网络较慢,在使用vue绑定数据的时候,渲染页面时会出现变量闪烁,例如

代码语言:javascript复制
<div class="#app">
    <p>{{value.name}}</p>
</div>

在加载的时候会看到这种变量情况,过了零点几秒之后才会渲染数据

代码语言:javascript复制
{{value.name}}
解决:

在vue中有个指令可以解决这个问题,v-cloak 那么,v-cloak要放的位置并不需要添加到每个标签,只要在el挂载的标签上添加就可以

代码语言:javascript复制
<div class="#app" v-cloak>
    <p>{{value.name}}</p>
</div>

同时,在css中需加上

代码语言:javascript复制
[v-cloak] {
    display: none;
}

这样就可以解决页面显示变量情况了

注意:

但是有的时候会不起作用,可能的原因有二: 1、v-cloak的display属性被层级更高的给覆盖掉了,所以要提高层级

代码语言:javascript复制
[v-cloak] {
    display: none !important;
}

2、样式放在了@import引入的css文件中 v-cloak的这个样式放在@import 引入的css文件中不起作用,可以放在link引入的css文件里或者内联样式中

0 人点赞