Vue.js 中的 v-cloak 指令及使用详解


Posted in Javascript onNovember 19, 2018

先来看下vue.js 中的v-cloak 指令

Vue.js 中的 v-cloak 指令及使用详解

可以使用 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>

效果:

Vue.js 中的 v-cloak 指令及使用详解

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

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

html:

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

css:

[v-cloak]{
  display: none;
}

使用 v-cloak 指令之后的效果( demo ):

Vue.js 中的 v-cloak 指令及使用详解

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

下面看下Vue中v-cloak使用详解

这次给大家带来Vue中v-cloak使用详解,Vue中v-cloak使用的注意事项有哪些,下面就是实战案例,一起来看一下。

v-cloak 的作用和用法

用法:

这个指令保持在元素上直到关联实例结束编译。和 css 规则如[v-cloak] { display: none }一起用时,这个指令可以隐藏未编译的 Mustache 标签直到实例准备完毕。官方API{{msg}}

setTimeout(() => {
 newVue({
  el:'#app',
  data: {
   msg:'hello'
  }
 })
},2000)

v-cloak 可以解决这一问题,在 css 中加上HTML 绑定 Vue实例,在页面加载时会闪烁然后才会出现加载完成字样,为了效果更明显,我们可以延后加载 Vue 实例

[v-cloak] {
 display: none;
}

Vue1.x 与 Vue2 中 v-cloak 的不同在 html 中的加载点加上 v-cloak,就可以解决这一问题

Vue1 中,允许将 Vue 实例挂载在 body 上,而 Vue2 是不允许的,想对整个页面实例化,需要另外用一个 p 来容纳整个页面内容,对其进行实例化

这样在使用 v-cloak 时,同样需要用到这种方法

为什么我用的 v-cloak 无效?

在实际项目中,我们常通过 @import 来加载 css 文件

@import"style.css"
@import"index.css"

为了避免这种情况,我们可以将[v-cloak]写在 link 引入的 css 中,或者写一个内联 css 样式,这样就得到了解决。而 @import 是在页面 DOM 完全载入后才会进行加载,如果我们将[v-cloak]写在 @import 加载的 css 文件中,就会导致页面仍旧闪烁。

总结

以上所述是小编给大家介绍的Vue.js 中的 v-cloak 指令及使用详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
对setInterval在火狐和chrome切换标签产生奇怪的效果之探索,与解决方案!
Oct 29 Javascript
js取滚动条的尺寸的函数代码
Nov 30 Javascript
解决Extjs 4 Panel作为Window组件的子组件时出现双重边框问题
Jan 11 Javascript
js函数定时器实现定时读取系统实时连接数
Apr 30 Javascript
Node.js中HTTP模块与事件模块详解
Nov 14 Javascript
JS实现一个按钮的方法
Feb 05 Javascript
JavaScript获取当前网页最后修改时间的方法
Apr 03 Javascript
Javascript中prototype的使用详解
Jun 18 Javascript
bootstrap table 表格中增加下拉菜单末行出现滚动条的快速解决方法
Jan 05 Javascript
javascript实现对话框功能警告(alert 消息对话框)确认(confirm 消息对话框)
May 07 Javascript
vue路由中前进后退的一些事儿
May 18 Javascript
vue如何在项目中调用腾讯云的滑动验证码
Jul 15 Javascript
浅析Vue.js 中的条件渲染指令
Nov 19 #Javascript
Vue.js 中的 v-show 指令及用法详解
Nov 19 #Javascript
深入浅析Vue.js 中的 v-for 列表渲染指令
Nov 19 #Javascript
为什么说JavaScript预解释是一种毫无节操的机制详析
Nov 18 #Javascript
利用原生的JavaScript实现简单拼图游戏
Nov 18 #Javascript
Javascript实现动态时钟效果
Nov 17 #Javascript
使用Javascript简单计算器
Nov 17 #Javascript
You might like
总结PHP删除字符串最后一个字符的三种方法
2016/08/30 PHP
php获取文章内容第一张图片的方法示例
2017/07/03 PHP
PHP实现简单的模板引擎功能示例
2017/09/02 PHP
PHP设计模式之策略模式原理与用法实例分析
2019/04/04 PHP
40款非常有用的 jQuery 插件推荐(系列一)
2011/12/21 Javascript
浅谈javascript 迭代方法
2015/01/21 Javascript
jQuery搜索同辈元素方法
2015/02/10 Javascript
jQuery EasyUI 菜单与按钮之创建简单的菜单和链接按钮
2015/11/18 Javascript
js添加事件的通用方法推荐
2016/05/15 Javascript
JS实现title标题栏文字不间断滚动显示效果
2016/09/07 Javascript
Jquery Easyui分割按钮组件SplitButton使用详解(17)
2016/12/18 Javascript
详解vue 中使用 AJAX获取数据的方法
2017/01/18 Javascript
老生常谈angularjs中的$state.go
2017/04/24 Javascript
详谈javascript精度问题与调整
2017/07/08 Javascript
JS获取填报扩展单元格控件的值的解决办法
2017/07/14 Javascript
浅谈React Native Flexbox布局(小结)
2018/01/08 Javascript
JS模拟实现哈希表及应用详解
2018/05/04 Javascript
vue+element-ui+axios实现图片上传
2019/08/20 Javascript
python实现哈希表
2014/02/07 Python
Python读取图片为16进制表示简单代码
2018/01/19 Python
python 读取txt,json和hdf5文件的实例
2018/06/05 Python
Python3.7中安装openCV库的方法
2018/07/11 Python
tensorflow学习教程之文本分类详析
2018/08/07 Python
python基础梳理(一)(推荐)
2019/04/06 Python
在交互式环境中执行Python程序过程详解
2019/07/12 Python
Python numpy数组转置与轴变换
2019/11/15 Python
基于Python执行dos命令并获取输出的结果
2019/12/30 Python
Matplotlib使用Cursor实现UI定位的示例代码
2020/03/12 Python
全球知名鞋履品牌授权零售商:Journeys
2016/09/17 全球购物
俄罗斯卫浴采暖及维修用品超级市场:Dkrussia
2020/05/12 全球购物
舞蹈比赛获奖感言
2014/02/04 职场文书
财务科科长岗位职责
2014/03/10 职场文书
城市创卫标语
2014/06/17 职场文书
青春飞扬演讲稿
2014/09/11 职场文书
判断Python中的Nonetype类型
2021/05/25 Python
服务器间如何实现文件共享
2022/05/20 Servers