调试主题的时候发现MENU主菜单有时候会一闪而过,然后再隐藏。尝试调整代码运行的先后顺序,发现并没有解决问题。

通过万能的搜索引擎,找到一个有效的解决办法。

v-cloak指令:v-cloak不需要表达式,它会在Vue实例结束编译时从绑定的HTML元素上移除,经常和CSS的display:none配合使用。例如:

<div id="app" v-cloak>
{{message}}
</div>
<script>
var app = new Vue({
    el:"#app",
    data:{
        message:"这是一段文本"
    }
})
</script>

这段代码虽然已经加了指令v-cloak,但其实并没有起到任何作用,当网速较慢、Vue.js 文件还没加载完时,在页面上会显示{{message}}的字样,直到Vue创建实例、编译模版时,DOM才会被替换。所以这个过程屏幕还是会有闪动。
接下来只需要在CSS中加一句简单的代码就可以解决这个问题了:

[v-cloak]{
display:none; }

在一般情况下,v-cloak是一个解决初始化慢导致页面闪动的最佳方案,对于简单的项目很实用。效果可以查看本站。

标签: v-cloak, 代码


歌曲封面
0:00