Vue指令之 v-cloak、v-text、v-html实例详解


Posted in Javascript onAugust 08, 2019

v-cloak

当用户频繁刷新页面或网速慢时,页面未完成 Vue.js 的加载时,导致 Vue 来不及渲染,这就会导致在浏览器中直接暴露插值(表达式),Vue由此也给出了解决方法。

在指定标签或整个父容器加入v-cloak指令,通过css选择器选中v-cloak,隐藏元素即可。

// html
<div v-cloak id="app">
 <span>{{ msg }}</span>
</div>
// css
[v-cloak]{
 display:"none";
}
// vue实例对象 => vm
var vm = new Vue({
 el:'#app',
 data:{
 msg:"hello world",
 }
})

Vue指令之 v-cloak、v-text、v-html实例详解

从图中可以看到,Vue在页面数据传递时,如果一开始插值表达式获取不到数据,那么包含“v-cloak”属性的节点就会执行“display:none”样式,导致页面什么也看不到,当插值表达式获取到数据之后,就会在节点中自动移除“v-cloak”属性,这时样式也就不起作用了,从而展示了正常的数据。

那么v-cloak指令渲染数据会不会影响到附近元素内容?

Vue指令之 v-cloak、v-text、v-html实例详解

可以看到,v-cloak指令不会覆盖元素内容。

v-text
v-text指令与v-cloak指令非常相似,v-text 指令不会暴露插值,但会覆盖附近元素内容。
// html
<div id="app">
 <span v-text="msg">这是一些文字</span>
</div>

// vue实例对象 => vm
var vm = new Vue({
 el:'#app',
 data:{
 msg:"hello world",
 }
})

Vue指令之 v-cloak、v-text、v-html实例详解

我在span标签中加入了 " 这是一些文字 " ,但是vue覆盖了元素内容,完成后并移除了v-text指令。

v-html

把字符串转义为html代码插入到文档,需要注意的是,v-html也会覆盖附近元素内容。

<div id="app">
 <p v-html="HTML"></p>
</div>
// vue实例对象 => vm
var vm = new Vue({
 el:'#app',
 data:{
 HTML:'<b>我是通过v-html指令插入</b>'
 }
})

Vue指令之 v-cloak、v-text、v-html实例详解

v-html指令为我们输出了真正的HTML代码,执行完并移除该指令在元素上的绑定。

总结

以上所述是小编给大家介绍的Vue指令之 v-cloak、v-text、v-html实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
js 异步操作回调函数如何控制执行顺序
Dec 24 Javascript
JS实现判断滚动条滚到页面底部并执行事件的方法
Dec 18 Javascript
jquery使用remove()方法删除指定class子元素
Mar 26 Javascript
JavaScript如何实现组合列表框中元素移动效果
Mar 01 Javascript
Bootstrap table右键功能实现方法
Feb 20 Javascript
Bootstrap滚动监听组件scrollspy.js使用方法详解
Jul 20 Javascript
详解vue2.0 不同屏幕适配及px与rem转换问题
Feb 23 Javascript
Vue 父子组件的数据传递、修改和更新方法
Mar 01 Javascript
使用JS获取页面上的所有标签
Oct 18 Javascript
微信小程序实现提交input信息到后台的方法示例
Jan 19 Javascript
webpack4之如何编写loader的方法步骤
Jun 06 Javascript
基于小程序请求接口wx.request封装的类axios请求
Jul 02 Javascript
javascript实现blob加密视频源地址的方法
Aug 08 #Javascript
使用ThinkJs搭建微信中控服务的实现方法
Aug 08 #Javascript
微信小程序云函数使用mysql数据库过程详解
Aug 07 #Javascript
js如何实现元素曝光上报
Aug 07 #Javascript
详解Element-UI中上传的文件前端处理
Aug 07 #Javascript
element-ui中Table表格省市区合并单元格的方法实现
Aug 07 #Javascript
Vue+Typescript中在Vue上挂载axios使用时报错问题
Aug 07 #Javascript
You might like
选择PHP作为网站开发语言的原因分享
2012/01/03 PHP
PHP类继承 extends使用介绍
2014/01/14 PHP
使用PHP similar text计算两个字符串相似度
2015/11/06 PHP
php基于jquery的ajax技术传递json数据简单实例
2016/04/15 PHP
php实现的双色球算法示例
2017/06/20 PHP
yii2.0框架使用 beforeAction 防非法登陆的方法分析
2019/09/11 PHP
javascript实现的距离现在多长时间后的一个格式化的日期
2009/10/29 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
2014/10/11 Javascript
jqueryUI里拖拽排序示例分析
2015/02/26 Javascript
使用jquery获取url及url参数的简单实例
2016/06/14 Javascript
vue2.0数据双向绑定与表单bootstrap+vue组件
2017/02/27 Javascript
bootstrap table动态加载数据示例代码
2017/03/25 Javascript
javascript防篡改对象实例详解
2017/04/10 Javascript
基于vue+canvas的excel-like组件实例详解
2017/11/28 Javascript
Vue项目使用localStorage+Vuex保存用户登录信息
2019/05/27 Javascript
js实现金山打字通小游戏
2020/07/24 Javascript
vue中路由跳转不计入history的操作
2020/09/21 Javascript
[42:24]完美世界DOTA2联赛PWL S2 LBZS vs FTD.C 第三场 11.27
2020/12/01 DOTA
Python通过RabbitMQ服务器实现交换机功能的实例教程
2016/06/29 Python
Windows安装Python、pip、easy_install的方法
2017/03/05 Python
浅析python3中的os.path.dirname(__file__)的使用
2018/08/30 Python
使用Python OpenCV为CNN增加图像样本的实现
2019/06/10 Python
Python 微信爬虫完整实例【单线程与多线程】
2019/07/06 Python
利用pyecharts实现地图可视化的例子
2019/08/12 Python
使用Python打造一款间谍程序的流程分析
2020/02/21 Python
HTML5 新事件 小结
2009/07/16 HTML / CSS
用HTML5.0制作网页的教程
2010/05/30 HTML / CSS
html5+svg学习指南之SVG基础知识
2014/12/17 HTML / CSS
移动端html5模拟长按事件的实现方法
2018/09/30 HTML / CSS
Toppik顶丰增发纤维官网:解决头发稀疏
2017/12/30 全球购物
Sephora丝芙兰印尼官方网站:购买化妆品和护肤品
2018/07/02 全球购物
婚礼主持结束词
2014/03/13 职场文书
教师对学生的评语
2014/04/28 职场文书
2014年企业党建工作总结
2014/12/18 职场文书
新学期家长寄语2016
2015/12/03 职场文书
Python基础详解之邮件处理
2021/04/28 Python