Vue学习之旅Part1:Vue的数据渲染语法和指令(插值表达式、v-cloak、v-text、v-html)
在Vue里 有好几种数据渲染的方法及相关指令 下面将一一介绍:
一、插值表达式
插值表达式是用两个花括号{{}}包裹属性 属性在Vue实例里定义:
通过Vue提供的指令即可很方便地将数据渲染到页面上 无需手动操作DOM元素了
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title><!-- 引入Vue --><script src="./lib/vue-2.4.0.js"></script>
</head>
<body><div id="app"><p>{{msg}}</p></div><script>var vm=new Vue({el:"#app",data:{msg:"Hello Vue!"}})</script>
</body>
</html>
由于插值表达式的语法是{{}} 像是一撇胡子 因而也被称为mustache胡子表达式
二、v-clock
插值表达式存在闪烁的问题
在网速卡的情况下 加载插值表达式时 页面会显示{{xxx}} 当页面加载好了才会显示内容 影响美观
此时 可添加v-cloak属性 以解决插值表达式{{}}闪烁的问题
<div id="app"><!-- 解决插值表达式闪烁的问题 --><p v-cloak>{{msg}}</p>
</div>
然后给v-clock添加一个css样式即可:
<style>[v-cloak]{display: none;}
</style>
这样 在网速卡的情况下 插值表达式不会被显示出来 会被display:none隐藏 等页面加载完了直接显示内容
三、v-text
v-text的效果和{{}}插值表达式差不多 都是显示数据
<div id="app"><h4 v-text="msg"></h4>
</div>
<script>var vm=new Vue({el:"#app",data:{msg:"Hello Vue!"}})
</script>
v-text和插值表达式的区别是:
v-text不会有闪烁问题
因为并没有在里面写表达式 而是加在属性里
但插值表达式也有其优点:
插值表达式可以在前后加上任意内容:
例如:
<p v-cloak>---{{msg}}---</p>
因为插值表达式只会替换自己的占位符 不会影响其它内容
而v-text会覆盖元素中原本的内容
四、v-html
若要渲染HTML标签 v-text是不行的 因为v-text并不会转义Html标签
这会导致Html标签被原原本本的显示到页面上
此时 需要用到v-html:
类似于Thymeleaf的th:utext属性 会对Html标签进行转义
<!-- v-html可以转义html标签 -->
<div v-html="msg"></div>
<script>var vm=new Vue({el:"#app",data:{msg:"Hello Vue!"}})
</script>
Vue学习之旅Part1:Vue的数据渲染语法和指令(插值表达式、v-cloak、v-text、v-html)相关推荐
- 阿菜的Vue学习之旅(一)
阿菜的Vue学习之旅(一) 1.Vue的初步使用 2.关于MVVM架构的Vue设计 1.Vue的初步使用 刚刚开始接触Vue的时候,阿菜是这样写 html部分: <div id="me ...
- 「Vue 学习笔记 1」Vue 项目快速搭建,初始项目各个文件夹作用介绍和启动代码执行流程分析
「Vue 学习笔记 1」Vue 项目快速搭建,初始项目各个文件夹作用介绍和启动代码执行流程分析 前言 一.我的开发环境 二.使用 Vue CLI (Vue 脚手架)快速搭建项目 三.初始项目的目录结构 ...
- 前端Vue学习之路(四)axios请求数据
axios 1.增加新知识 2.旧方案 3.新方案(一) 4.为什么要用拦截器 (新方案二) 1.增加新知识 假如每个组件都引用axios,后期如果axios库不再维护了,那每个组件都要改动 所以封装 ...
- Vue学习之旅-01
Vue01 1. 初体验 2. 插值操作 3. 动态绑定属性 4. 计算属性 5. 事件监听 6. 条件判断 1. 初体验 初体验 <!DOCTYPE html> <html lan ...
- Vue学习之旅-02
Vue02 7. 循环遍历 8. v-model的使用 9. 组件化开发 10. 组件通信 11. 插槽 7. 循环遍历 v-for遍历数组 <div id="app"> ...
- Vue学习笔记1---初识vue
1.vue的前世今生 在vue之前,有angular.react前端框架,vue算是后起之秀. 2013年 [中]尤雨溪 大佬的GitHub主页 ^_^ gigyyx990803 (Evan You ...
- vue学习(一)初步了解 vue实例
//html:<div id="app"> <p>{{msg}}<p></div> //script 需要引入jar包vue-2.4 ...
- VUE学习一:初识VUE、指令、动态绑定、计算属性
文章目录 导言 一.01-初体验 1. ch01_helloworld.html 2. ==v-for指令==:ch02_vue列表展示_v-for.html 3. ==v-on指令==:ch03.1 ...
- Vue学习记录8,vue脚手架配置代理的两种方式,Github搜索案例,vue-resource,三种插槽,Vuex及搭建Vuex环境,getter和四个map方法的使用, 模块化+命名空间
目录 vue脚手架配置代理 方法一 方法二 Github搜索案例 UserList.vue UserSearch.vue 效果图 vue-resource 插槽 默认插槽 具名插槽 作用域插槽 Vue ...
最新文章
- 用Machin公式计算圆周率的源程序
- 一个封锁操作被对 wsacancelblockingcall 的调用中断_操作系统概论
- 安装引导黑屏_南京课工场IT培训:引导过程与服务控制(理论笔记篇)
- javascript一些底层方法总结及用法
- The authenticity of host 'github.com (52.74.223.119)' can't be established.
- 计算机自然语言的中国科学家,中科院教授王斌加入小米 任自然语言处理首席科学家...
- OpenGL:绘制太阳地球例子
- 移动设备的界面设计尺寸
- 2.6.24内核中对S3C2440的引导启动分析
- Java 生成二维码实战
- [NOIP2015] 运输计划(第二弹)
- 数字化让企业精益管理梦成真,技术成核心驱动
- 改为dns服务器响应的原因,2020年dns服务器异常的原因及解决方法
- ESLint 格式化程序
- Android butterknife黄油刀使用大全
- 【微机原理】数字电路器件—门 与门 或门 非门电路及实例
- 如何在非简体中文版XP下面玩魔兽争霸
- classifier of chains
- 自己理解三叉树TernarySearchTrie
- Python两大佬互相撕逼 技术何苦为难技术?