防止vuejs在解析时出现闪烁
2017-03-30 13:42
260 查看
在使用vuejs、angularjs开发时,经常会遇见在如Chrome这类能够快速解析的浏览器上出现表达式({{ express }} ),或者是模块(div)的闪烁。对于这个问题由于JavaScript去操作DOM,都会等待DOM加载完成(DOM ready)。对于vuejs、angularjs这些会在DOM ready完会才回去解析html view Template,所以对于Chrome这类快速的浏览器你会看见有闪烁的情况出现。而对于IE7,8这类解析稍慢的浏览器大部分情况下是不会出现这个问题的。解决方法: 在vuejs、angularjs中为我们提供了v-cloak、ng-cloak来实现防止闪烁的方案,同时对于bing文字({{ express }} )我们也可以改为v-bind、ng-bind来实现避免。下面以vuejs为例:
#v-cloak
用法: 这个指令保持在元素上直到关联实例结束编译。和 CSS 规则如 [v-cloak] { display: none } 一起用时,这个指令可以隐藏未编译的 Mustache 标签直到实例准备完毕。
[v-cloak] { display: none; } <div v-cloak> {{ message }} </div>
<div> 不会显示,直到编译结束。 原理: 带有v-clock的的元素设置为display:none,隐藏掉,在等到vue解析到带有v-clock的节点时候,会把attribute和class同时remove掉,这样就可以实现防止节点的闪烁。
//example1:<span>{{price}}</span>//example2:<span v-bind="price"></span>//example3:<span v-cloak>{{price}}</span>
上例子2和例子3实现的效果是一样的,而例子1在vuejs解析{{price}}之前,用户是可以看到"{{price}}"这个字符串的。而例子2和例子3不会有这种闪烁的情况。
相关文章推荐
- vuejs在解析时出现闪烁的原因及防止闪烁的方法
- 防止vuejs在解析时出现闪烁
- vuejs在解析时出现闪烁的原因及防止闪烁的方法
- vue防止闪烁(当网速慢时,访问页面出现花括号)
- QT帧显示时如何防止闪烁现象出现
- Android SAX解析远程服务器端的xml,防止解析的时候出现空格或者标点符号再次解析的方法
- 使用 v-cloak 防止页面加载时出现 vuejs 的变量名
- 使用QT进行视频帧显示时如何防止闪烁现象出现呢?
- 使用 v-cloak 防止页面加载时出现 vuejs 的变量名
- 使用 v-cloak 防止页面加载时出现 vuejs 的变量名
- fastjost 在反序列化多层嵌套时出现有的字段解析不出来,请大家指点
- winform控件大小改变是防止背景重绘导致的闪烁
- 解决64位系统OpenCV 2.4.8 +VS2013的Release版本出现无法解析的外部命令
- VC绘图防止屏幕闪烁
- mysql使用过程中,为防止出现中文乱码需要注意的四个方面
- iOS中json解析出现的null,nil,NSNumber的解决办法
- 软件内部更新,出现“解析包时出现问题”的错误后停止
- 笔记本加装固态硬盘后系统迁移,开机出现桌面闪烁问题的解决方法
- 解析包时出现错误,用代码安装apk出现问题
- 关于内存DC绘图防止屏幕闪烁说明