前言
今天用vue做一个h5页面的时候,发现加载页面的时候隐藏的元素闪烁一下消失了,很影响体验。简单分析了一下原因:
原因应该是请求的速度没有网页加载速度快,因为我是使用接口请求的数据判断隐藏与否的,所以就出现了这样的问题。通过上网查资料才解决了这个问题
解决方法
通过vue里面的指令v-cloak就能解决这个问题啦,这个指令的作用就是让js文件加载完成时让你的元素有一个预样式,加载完成再替换掉它
在<head>里面添加预样式:
<style> [v-cloak] {
display: none;
}
在需要添加预样式的元素绑定v-cloak指令:
<div id="app" v-cloak>
</div>
总结
这个平时不起眼的指令居然有这么大的作用,我也是今天遇到问题才第一次了解到它,记录一下,也希望帮助到大家