≡
  • 网络编程
  • 数据库
  • CMS技巧
  • 软件编程
  • PHP笔记
  • JavaScript
  • MySQL
位置:首页 > 网络编程 > vue.js

Vue.js 中的 v-cloak 指令及使用分析

人气:543 时间:2019-04-14

这篇文章主要为大家详细介绍了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>

效果:

【图片暂缺】

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

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

html:

代码如下:


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

css:

代码如下:


[v-cloak]{
  display: none;
}

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

【图片暂缺】

在简单项目中,使用 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 指令及使用详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对四海网网站的支持!

本文来自:http://www.q1010.com/184/6524-0.html

注:关于Vue.js 中的 v-cloak 指令及使用分析的内容就先介绍到这里,更多相关文章的可以留意四海网的其他信息。

关键词:vue.js

您可能感兴趣的文章

  • 解决vue2 在mounted函数无法获取prop中的变量问题
  • nuxt.js中间件实现拦截权限判断的方法
  • vue中使用better-scroll实现滑动效果及注意事项
  • Vue.js 中 axios 跨域访问错误问题及解决方法
  • vue2中引用及使用 better-scroll的方法分析
  • vue.draggable实现表格拖拽排序效果
  • vue2.0移动端滑动事件vue-touch的实例代码
  • 分析vuex 渐进式教程实例代码
  • VUE2.0 ElementUI2.0表格el-table自适应高度的实现方法
  • Vue axios全局拦截 get请求、post请求、配置请求的实例代码
上一篇:Vue 全家桶实现移动端酷狗音乐功能
下一篇:nuxt.js中间件实现拦截权限判断的方法
热门文章
  • Vue 报错TypeError: this.$set is not a function 的解决方法
  • vue实现动态添加数据滚动条自动滚动到底部的示例代码
  • vue项目设置scrollTop不起作用(总结)
  • vue项目中使用vue-i18n报错的解决方法
  • iview实现select tree树形下拉框的示例代码
  • 分析关于element级联选择器数据回显问题
  • vue项目打包后打开页面空白解决办法
  • 解决element ui select下拉框不回显数据问题的解决
  • element-ui table span-method(行合并)的实现代码
  • element-ui 设置菜单栏展开的方法
  • 最新文章
    • 理解vue ssr原理并自己搭建简单的ssr框架
    • vue favicon设置以及动态修改favicon的方法
    • vue-router启用history模式下的开发及非根目录部署方法
    • 从零开始在NPM上发布一个Vue组件的方法步骤
    • Element input树型下拉框的实现代码
    • Vue 报错TypeError: this.$set is not a function 的解决方法
    • Vue.js组件高级特性实例分析
    • 浅谈VueJS SSR 后端绘制内存泄漏的相关解决经验
    • 分析Vue.js自定义tipOnce指令用法实例
    • 浅谈vuex actions和mutation的异曲同工

四海网收集整理一些常用的php代码,JS代码,数据库mysql等技术文章。