关于VUE的一些指令的介绍
V-cloak
这是一个不常用的指令,出现这个指令的原因是因为有时候网络速度慢,还没加载完vue,代码就开始编译了,这个时候渲染出来的内容就可想而知了
<!DOCTYPE html>
<html lang="en">
<head>
<title></title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="./vue2.js"></script>
<style>
/* 2. 利用属性选择器,选中v-cloak属性,设置display:none */
/* 当vue实例被创建完毕之后,vue会将v-cloak指令从标签中移除掉 */
[v-cloak] {
display: none;
}
</style>
</head>
<body>
<div id="app">
<!--
v-cloak指令用于解决表达式闪烁问题
1. 首先给闪烁的标签加上v-cloak指令
-->
<h1 v-cloak>{{msg}}</h1>
</div>
<script>
var vm = new Vue({
el: '#app',
data: {
msg: 'hello'
}
})
</script>
</body>
</html>
这个是关于V-cloak的使用方法,这个属性要配合display:none这个属性使用,当vue实例还没被创建完毕之后,使用vue-cloak的属性选择器的样式会生效,当vue加载完毕之后,v-cloak将会移除掉
V-show 和 V-if 的区别
v-show和v-if都是用来控制元素的显示和隐藏。他们都是后面跟一个布尔值,如果是true就是显示,如果是false就是隐藏
v-show是通过css样式display:none来控制元素的显示和隐藏的,而v-if则是直接操控dom来控制元素的显示隐藏,所有设置到大量的dom元素的显示和隐藏的时候,就使用v-show,避免重复操控dom降低性能,如果是涉及到异步数据渲染的时候,就使用v-if
V-for
v-for是用来循环遍历数组和对象的,其他的不多说了,在这里主要介绍两种情况不能触发视图模型的更新的情况和解决方法
1.通过数组的length属性去改变数组时不能触发视图更新
解决方法:使用splice方法解决
2.通过数组的索引去改变数组时不能触发视图的更新
通过Vue.set(需要改变的数组,数组的索引,新的值)
<!DOCTYPE html>
<html lang="en">
<head>
<title></title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="./vue2.js"></script>
</head>
<body>
<div id="app">
<ul>
<li v-for="items in users">
{{items.name}}
</li>
</ul>
<button @click="userLength">使用length的属性来实现视图的更新</button>
<button @click="userSplice">通过splice属性实现视图的更新</button>
<button @click="userIndex">通过索引实现视图的更新</button>
<button @click="userVueSet">通过Vue.set的方法实现视图的更新</button> </div>
<script>
var vm = new Vue({
el: '#app',
data: {
users: [
{name: 'jack1', id: 1},
{name: 'jack2', id: 2},
{name: 'jack3', id: 3},
{name: 'jack4', id: 4}
]
},
methods: {
userLength(){
// 这个方法是无法实现视图更新的
this.users.length=0;
},
userSplice(){
this.users.splice(0,1);
},
userIndex(){
// 直接通过索引的方法是无法实现视图的更新
this.users[0]={name:"rose",id:"3"}
},
userVueSet(){
// 使用Vue.set的方法事件视图的更新,基本的语法为vue.set(需要改变的数组,索引,新的值)
Vue.set(this.users, 0, {name:"rose",id:"3"})
}
}
})
</script>
</body>
</html>
关于VUE的一些指令的介绍的更多相关文章
- Vue基础01vue的基本示例,vue的双向数据绑定,vue中常见的几种用法,vue相关常见指令
自学vue框架,每天记录重要的知识点,与大家分享!有不足之处,希望大家指正. 本篇将讲述:vue的基本示例,vue的双向数据绑定,vue中常见的几种用法,vue相关常见指令 前期学习基础,使用vue. ...
- Vue(九) 自定义指令
前面介绍了许多 Vue 内置的指令,比如 v-if.v-show等,这些丰富的指令能满足我们绝大部分的业务需求,不过在需要一些特殊功能时,我们仍然希望对 DOM 进行底层的操作,这时就要用到自定义指令 ...
- vue对比其他框架详细介绍
vue对比其他框架详细介绍 对比其他框架 — Vue.jshttps://cn.vuejs.org/v2/guide/comparison.html React React 和 Vue 有许多相似之处 ...
- vue.js常用指令
本文摘自:http://www.cnblogs.com/rik28/p/6024425.html Vue.js的常用指令 上面用到的v-model是Vue.js常用的一个指令,那么指令是什么呢? Vu ...
- 【Vue】vue.js常用指令
http://www.cnblogs.com/rik28/p/6024425.html Vue.js的指令是以v-开头的,它们作用于HTML元素,指令提供了一些特殊的特性,将指令绑定在元素上时,指令会 ...
- Vue中基本指令用法
指令在Vue中是个很重要的功能,在Vue项目中是必不可少的.根据官网的介绍,指令 (Directives) 是带有 v- 前缀的特殊属性.指令的职责是,当表达式的值改变时,将其产生的连带影响,响应式地 ...
- Vue 3自定义指令开发
本文由葡萄城技术团队原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 什么是指令(directive) 在Angular和Vue中都有Direct ...
- 最简单的方式理解Vue的自定义指令与混合
vue.js 自定义指令 钩子函数:bindinsertedupdatecomponentUpdatedunbind 钩子函数完整实例:html: <div id="hook-argu ...
- vue.js自定义指令入门
Vue.js 允许你注册自定义指令,实质上是让你教 Vue 一些新技巧:怎样将数据的变化映射到 DOM 的行为.你可以使用Vue.directive(id, definition)的方法传入指令id和 ...
随机推荐
- A电脑能ping 通B电脑,但B电脑无法ping能和访问B
过程: A电脑共享了打印机,B电脑想连接A的打印机,发现拒绝访问,无法登录A电脑 问题: A电脑能ping 通B电脑,但B电脑无法ping能和访问B 原因:A电脑禁用了共享访问 处理:使用一键共享设置 ...
- U-BOOT启动流程分析--start_armboot函数(二)
第二阶段的功能: 初始化本阶段所需的硬件设备(主要设置系统时钟.初始化串口.Flash.网卡.USB) 检测系统内存映射(memory map) 将内核映像和根文件系统映象从Flash上读到RAM空间 ...
- 数据分析-jupyter
安装 jupyter pip install jupyter 快捷键 插入 cell : a b 删除cell : x 切换cell的模式: m y 执行 shift +enter 查看帮助 ...
- FZU 1096 QS Network
QS Network Time Limit: 1000ms Memory Limit: 32768KB This problem will be judged on FZU. Original ID: ...
- 关于ajax访问express服务器的跨域问题
在学习es6的时候用promise封装了一个ajax <script type="text/javascript"> function getNews(URL) { l ...
- 小米开源文件管理器MiCodeFileExplorer-源码研究(6)-媒体文件MediaFile和文件类型MimeUtils
接着之前的第4篇,本篇的2个类,仍然是工具类.MediaFile,媒体文件,定义了一大堆的常量,真正的有用的方法就几个.isAudioFileType.isVideoFileType之类的. Mime ...
- 一个Web报表项目的性能分析和优化实践(七):性能监测工具JavaMelody
简介 JavaMelody 能够监测Java或Java EE应用程序服务器,并以图表的方式显示:Java内存和Java CPU使用情况,用户Session数量,JDBC连接数,和http请求.sql请 ...
- 获取Spring容器中Bean实例的工具类(Java泛型方法实现)
在使用Spring做IoC容器的时候,有的类不方便直接注入bean,需要手动获得一个类型的bean. 因此,实现一个获得bean实例的工具类,就很有必要. 以前,写了一个根据bean的名称和类型获取b ...
- hash_set和hash_map
1.hash_set集合容器 hash_set利用链式哈希表,进行数据的插入.删除和搜索.与set容器同样,不同意插入反复键值的元素.SGIC++哈希表是一个链式的结构,由表头和一系列单链组成.表头是 ...
- sqlserver 运行正則表達式,调用c# 函数、代码
--1.新建SqlServerExt项目,编写 C# 方法生成 SqlServerExt.dll 文件 using System; using System.Data; using System.Da ...