cloak指令:解决(在页面加载过程中,因网速过慢,导致的)插值表达式闪烁问题

css中的属性选择器: [ ],例如:

<p v-cloak> {{ msg }} </p>

上面p标签有属性 :v-cloak。因此,可以为此设置样式:

[v-cloak] {  // 为带有 v-cloak 属性的所有元素设置样式:

  display:none;

}

在上面p标签中,{{ msg }} 被称为:插值表达式。

在 VUE 中可以使用 v-cloak 指令设置样式,这些样式会在 Vue 实例编译结束时,从绑定的 HTML 元素上被移除。

当网络较慢,网页还在加载 Vue.js ,而导致 Vue 来不及渲染,这时页面就会显示出 Vue 源代码。我们可以使用 v-cloak 指令来解决这一问题。

html:

<div id="app">
    {{context}}
</div> 

js:

<script>
    var app = new Vue({ el: '#app', data: { context:'互联网头部玩家钟爱的健身项目' } }); </script> 

效果:


 
 

我们使用 v-cloak 指令来解决屏幕闪动的问题吧O(∩_∩)O~

js 不变,在 div 中加入 v-cloak 指令。

html:

<div id="app" v-cloak> {{context}} </div> 

css:

[v-cloak]{
    display: none;
}
 
 

在简单项目中,使用 v-cloak 指令是解决屏幕闪动的好方法。但在大型、工程化的项目中(webpack、vue-router)只有一个空的 div 元素,元素中的内容是通过路由挂载来实现的,这时我们就不需要用到 v-cloak 指令咯。

但有时添加完毕后仍有部分变量会显示,这是怎么回事呢?通过控制台查看,原来是 v-cloak 的display属性被优先级别高的样式覆盖所导致,我的处理方案是添加 !important ,简单粗暴。


转自:https://www.jianshu.com/p/f56cde007210

          https://blog.csdn.net/knqiufan/article/details/81002957

猜你喜欢

转载自www.cnblogs.com/JAVA-STUDYER/p/10844566.html