小项目中如何防止Vue的闪现画面效果
这篇文章将为大家详细讲解有关小项目中如何防止Vue的闪现画面效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
成都创新互联服务项目包括乌鲁木齐网站建设、乌鲁木齐网站制作、乌鲁木齐网页制作以及乌鲁木齐网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,乌鲁木齐网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到乌鲁木齐省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
Vue的优点
Vue具体轻量级框架、简单易学、双向数据绑定、组件化、数据和结构的分离、虚拟DOM、运行速度快等优势,Vue中页面使用的是局部刷新,不用每次跳转页面都要请求所有数据和dom,可以大大提升访问速度和用户体验。
HTML: 元素加上v-cloak
CSS: [v-cloak]{display: none}
过程
页面刚加载的时候胡子语法会显示出来。
v-cloak
是VueJS小型项目中提升用户体验简单且重要的方法。
用法
HTML中在你需要组织闪现的标签上加上v-cloak
{{text}}
CSS中给v-cloak设定样式,这个样式是只有【在vue实例编译结束前】应用的样式。
[v-cloak]{ display: none; }
原理
我没读完源码,但是v-cloak
的原理我大概理解一点:
首先是CSS选择器,用[target]选择的是“带有 target 属性所有元素。”。可以点这里复习选择器。
那么[v-cloak]选择出来的就是所有带有v-cloak
属性的元素了。
实例初始化完成之后,VueJS中会把Vue中特有的attribute去掉。在实例初始化完成之前,上面写的main的HTML代码实际是这样的:
然后加上CSS,就把所有带有v-cloak的元素都display: block
了。
其实不止是v-cloak,你可以用v-if来试试,CSS里使用[v-if]{display:none}
,效果看起来是一样的。和v-cloak
一样,v-if也是在实例编译完之后去掉。
源码
然后我刚才去读了一下源码,大概是这一段,感兴趣的大佬可以去搜搜读读理解理解。
if (isRealElement) { // mounting to a real element // check if this is server-rendered content and if we can perform // a successful hydration. if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) { oldVnode.removeAttribute(SSR_ATTR); hydrating = true; } }
关于“小项目中如何防止Vue的闪现画面效果”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
当前题目:小项目中如何防止Vue的闪现画面效果
标题来源:http://hbruida.cn/article/gegssi.html