vue2,vue指令和选项
vue特点
- mvvm框架
- 响应式(声明式)
- 组件化(支持自定义组件)
- 丰富的指令(Dom功能的抽象)
- 基于选项(template,data,computed,watch,methods)
- vue文档集中ue
- Vue生态丰富且简单
- 渐进式()
Veu和Dom开发思想
- Dom开发思想:当我们需要在交互事件中改变视图时,使用DOM选择器选中目标节点、再使用DOM方法直接改变视图。
- Vue开发思想:当我们需要在交互事件中改变视图时,先在data选项中声明一个合适的变量,再在交互事件中改变这个声明式变量即可,视图自动更新,这是一种间接的操作。
常用的Vue指令有哪些
文本类指令:
- {{}}文本插值:用于绑定节点的文本。{{}}这种绑定值的方式会出现一闪而过的效果,使用v-cloak来解决。
- v-text:用于绑定节点的文本,大多数的时候,可以和{{}}替换。
- v-once:用于指定节点的动态内容只绑定一次,当前节点中所对应的变量发生变化时视图不更新。一般情况下,v-once只能和{{}}一起用。
- v-once和v-cloak:都是不需要接受表达式来做为‘值’。
- v-html:用于动态绑定的html节点,相当于DOM中的innerHTML,这个指令默认已经做了“防xss攻击”的处理。
动态属性指令:
v-bind:用于动态绑定节点的属性(比如:title ,value,style等)
事件绑定指令:
v-on:用于给视图节点绑定各种js事件(比如:click,keyup等)
v-on简写@
基本语法: <div @事件名.事件修饰符='事件处理'></div>
v-on事件修饰符:.stop阻止事件冒泡,.prevent阻止默认事件,.enter绑定键盘Enter键盘。
表单绑定指令:
v-model:用于表单取值(表单双向绑定) 比如:input,select
基本语法:<input style="text" v-model.表单修饰符='变量'>
v-model修饰符:.trim自动去除首尾空格 .number隐式类型转换 .lazy用于性能,当表单失去焦点时再进行双向绑定。
列表渲染:
v-for:用于渲染列表,对象,Number变量等。
渲染列表语法: <div v-for='(item,index) in array'></div>
渲染对象语法: <div v-for='(value,key,index) in obj'></div>
渲染Number变量语法: <div v-for='(num, index) in 5'></div>
条件渲染:
v-show:用于显示或隐藏视图节点,使用display:block / display:none 来实现的。
v-if,v-else-if,v-else:用于显示或隐藏视图节点,真正的移除或插入视图节点。
v-show和v-if的区别
v-if是节点的插入或移除,比较耗费性能;v-show只是通过样式来实现显示与隐藏,性能消耗低。
注意:不建议v-if和v-for一起使用;如果一定要一起使用,在vue2中v-for优先级更好。
其它指令
v-pre:用于调试,可以阻止vue编译器对指令的编译
v-slot:插槽
自定义指令
声明式变量的特点
当声明式变量时,它所对应的视图节点自动更新。
vue选项
- el:把vue组件(响应式系统)挂载到真实DOM
- data:专门用于定义声明式变量的
- methods:是专门用于定义函数方法的地方
- computed(计算属性):
- watch:侦听器(监听器)
computed
computed作用:
当指令的表达式比较复杂时,我们建议使用计算属性来优化,提升视图模板中代码的可阅读性、可维护性。
- 用于缓存一个复杂的运算,避免组件更新时产生没有必要的性能损耗。计算属性本质上是一个函数,Vue会分析函数体中使用到了哪些声明式变量,有且仅有这些声明式变量发生变化时,计算属性才会重新执行。
在Vue中,计算属性能计算哪些性质的变量
data,vuex数据,$route,计算一切__ob__的数据。
如何让计算属性同时支持get/set功能
const app = new Vue({
el:'#app',
computed:{
he:{
get(){
},
set(){
},
},
},
})
watch
作用:用于监听一个变量的变化,然后去做另一件事儿。
特点:当侦听器监听引用数据类型时,默认只能监听引用数据类型的第一层。
const app = new Vue({
el:'#app',
watch:{
info:{
deep:true,
handler(newInfo,oldInfo){
const.log(this.info)
}
},
//推荐写法
'info.child.age' (newAge, oldAge) {
},
})
vue2,vue指令和选项的更多相关文章
- 一个能拖动,能调整大小,能更新bind值的vue指令-vuedragx
一. 背景说明 开发一个可自定义组件化门户配置页面,期间采用了vue框架作为前端视图引擎,作为一个刚入手vue的萌新,开发第一个功能就遇到了拦路虎.需要一个拖动并且可改变大小的容器盒子.当时查看vue ...
- [Vue]vue中各选项及钩子函数执行顺序
在vue中,实例选项和钩子函数和{{}}表达式都是不需要手动调用就可以直接执行的. 一.生命周期图示 二.vue中各选项及钩子函数执行顺序 1.在页面首次加载执行顺序有如下: beforeCreate ...
- vue指令总结(二)
一.vue指令 1.v-text v-text是用于操作纯文本,它会替代显示对应的数据对象上的值.当绑定的数据对象上的值发生改变,插值处的内容也会随之更新.注意:此处为单向绑定,数据对象上的值改变,插 ...
- vue指令概览
原文 简书原文:https://www.jianshu.com/p/5fd47b7422fd 大纲 1.什么是vue指令 2.向指令中传入参数 3.指令中带入修饰符 4.指令的缩写 5.常见的vue指 ...
- Vue框架(一)——Vue导读、Vue实例(挂载点el、数据data、过滤器filters)、Vue指令(文本指令v-text、事件指令v-on、属性指令v-bind、表单指令v-model)
Vue导读 1.Vue框架 vue是可以独立完成前后端分离式web项目的js框架 三大主流框架之一:Angular.React.Vue vue:结合其他框架优点.轻量级.中文API.数据驱动.双向绑定 ...
- [Vue] : Vue指令
Vue指令之 v-cloak v-cloak是解决解决插值表达式的闪烁问题 . 给插值表达式的元素加上v-cloak <p v-cloak>{{ msg }}</p> 为v-c ...
- Vue学习笔记【10】——Vue指令之v-if和v-show
Vue指令之v-if和v-show <!DOCTYPE html> <html lang="en"> <head> <meta cha ...
- Vue学习笔记【4】——Vue指令之v-on
Vue指令之v-on v-on指令介绍 直接使用指令v-on 使用简化指令@ 绑定事件代码:@事件名="methods中的方法名称" <!DOCTYPE html> & ...
- 第三篇:Vue指令
Vue指令 1.文本指令相关 v-*是Vue指令,会被vue解析,v-text="num"中的num是变量(指令是有限的,不可以自定义) v-text是原样输出渲染内容,渲染控制的 ...
随机推荐
- stm32F103RCT6的DMA使用经历
DMA可以直接传输数据,减少了CPU的负担,是个很好的功能,但是用的时候难免会一头雾水.这次做个小小的串口收发程序就碰到了许多问题. 之前没有注意,选择了DMA的circular模式,然后奇怪的事 ...
- Oracle查看表空间大小
遇到报错 java.sql.SQLException: ORA-01653: 表 MESHIS.HIS_RET_LOT_FQC 无法通过 8 (在表空间 MESHIS_DATA_TBS 中) 扩展 a ...
- iNeuOS工业互联网操作系统,数据点、设备和业务的计算与预警
目 录 1. 概述... 2 2. 概念解释... 2 3. 数据点的计算与预警... 2 4. 设备的计算与预警... 3 5. 业务的 ...
- 基于.NetCore开发博客项目 StarBlog - (6) 页面开发之博客文章列表
系列文章 基于.NetCore开发博客项目 StarBlog - (1) 为什么需要自己写一个博客? 基于.NetCore开发博客项目 StarBlog - (2) 环境准备和创建项目 基于.NetC ...
- SRIO RapidIO (SRIO)协议介绍(-)
1 导读 1.1 与PCIe的差异 典型的PCIe结构定义了一个以单个中央处理器为核心的计算机系统,比如我们常见的工控机.PXIe机箱控制器.服务器内的IO设备.从系统架构来看,这个结构 ...
- 学习Java的第十七天——大数字运算
学习内容:大数字运算 代码实现: package 数字处理类; import java.math.BigInteger; public class BigIntegerDemo { public st ...
- H5 页面 上使用js实现一键复制功能
2.解决苹果手机浏览器 无法使用的问题 上面的方法在 iphone 手机 safari浏览器失效的问题 其实就是使用输入框先显示然后模拟选择复制在隐藏输入框
- 【转】理解 CI 和 CD 之间的区别
有很多关于持续集成(CI)和持续交付(CD)的资料.很多文章用技术术语来进行解释,以及它们怎么帮助你的组织.可惜的是,在一些情况下,这些方法通常与特定工具.甚至供应商相关联.在公司食堂里非常常见的谈话 ...
- HashMap高阶用法,十倍提升开发效率
HashMap在工作中使用非常频繁,其实在JDK1.8的时候新增一些更高阶的用法,熟练使用这些方法可以大大提升开发效率,写出更简洁优美的代码. 1. get方法指定返回默认值(getOrDefault ...
- 动态线程池框架 DynamicTp v1.0.6版本发布。还在为Dubbo线程池耗尽烦恼吗?还在为Mq消费积压烦恼吗?
DynamicTp 简介 DynamicTp 是一个基于配置中心实现的轻量级动态线程池管理工具,主要功能可以总结为 动态调参.通知报警.运行监控.三方包线程池管理等几大类. 经过几个版本迭代,目前最新 ...