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 ...
最新文章
- 如何使用Nodejs爬虫看漫画
- 可以多次使用同一个hbitmap吗_一个部位可以多次吸脂吗?
- vue.js 每次循环五个数据_AutoML数据增广
- 大一java实训报告1500字_从800字小作文,到3000字小论文你用了多久? | 校媒FM
- 解决Kali Linux XFCE桌面Tab无法补全
- python教程:ConfigParser模块使用教程
- python request is not defined_python引入requests模块报错
- matplotlib 一张图多个图,如何在Matplotlib中绘制同一个图上的多个函数?
- iOS - Swift NSUserDefaults		数据存储
- 修复Ubuntu系列pip
- 计算机网络知识大总结,包含各种熟悉得不能再熟悉的术语解析
- SPSS论证有这样的问题或错误?【SPSS 068期】
- Cocos2d-x中的BMFont(Fnt)字体改名
- android9 三星 港版,三星S9+官方港版安卓9固件系统线刷包:TGY-G9650ZHU4CSE7
- 网络协议学习---LLDP协议学习
- 【论文写作技巧】Endnote参考文献统一输出格式
- python朋友圈图片_教你如何用Python处理图片九宫格,炫酷朋友圈
- win8能发挥服务器性能吗,win10系统和win8.1系统哪个更好用?windows10和windows8.1性能对比解析...
- 给定两个数组arrx和arry,长度都为N。代表二维平面上有N个点,第i个点的x 坐标和y坐标分别为arrx[i]和arry[i],返回求一条直线最多能穿过多少个点?
- Word文档中如何快速切换英文大小写
热门文章
- 田泽安老师——混沌第1章备忘
- 2015年大数据基金闪耀 海富通、泰达宏利2016竞风流
- 南京邮电大学研究生支教团成员个人简介
- 湖南工学院学位计算机2018,湖南工学院计算机系PPT.ppt
- 什么是fbclid?新的facebook参数?
- 离散化(保序 / 非保序)
- LED显示屏上的毛毛虫的形成原因
- 几种DOS下实用的MP3播放器的介绍http://lason.bokee.com/5967848.html
- 【前端学习】 HTML学习笔记
- Flutter秒表计时器的实现(上)