Vue1.0常用语法
摘要: var vm = new Vue({ el: "选择器", 挂载到页面的那个元素里,即确定vue的作用范围 外部可通过vm.$el访问,得到的是一个原生dom元素,可进行对应操作 a: '', //自定义属性 外部可通过vm.$options访问 data: {
var vm = new Vue({
el: "选择器", 挂载到页面的那个元素里,即确定vue的作用范围 外部可通过vm.$el访问,得到的是一个原生dom元素,可进行对应操作
a: '', //自定义属性 外部可通过vm.$options访问
data: { }, //实例属性都在这里面,外部通过实例名,即vm.$data调用
computed: { }, //计算属性,也是实例属性,只是以方法的形式存在,并可以有逻辑运算的属性
method: { }, //实例方法都在这里
watch: { }, //对data和computed的属性进行监听,当属性有变化时自动触发,以方法的形式存在 外部通过$.watch调用
//注意:以上属性和方法,实例内部都通过this调用,外部则通过对应的实例方法访问
//在vue的生命周期过程中,它自身还提供了一系列的钩子函数供我们使用,进行自定义逻辑的注入:
created: function(){ 实例已经创建 }
beforeCompile: function(){ 模块编译之前 }
compiled: function(){ 模块编译之后;即模板占位符被是内容替换}
ready: function(){ 模板插入到文档中了;相当于window.onload }//Vue2.0已改为mounted
注意: 以上4个方法在对象被实例化后即按顺序执行,以下2个方法需通过事件触发,并通过调用 实例名.$destory() 才执行
beforeDestroy: function(){ 对象销毁之前 }
destroyed: function(){ 对象销毁之后 }
});
Vue对象解析:
1,对象属性
data、el、options、watch、computed
2,对象方法
生命周期之钩子函数
3,对象实例访问和调用属性和方法
A:实例属性调用:$options、$el、$data、$watch
这里着重说下$watch,它的一般语法为:
vm.$watch("监听的实例属性名",function() { // 对于监听数据变化后的业务处理代码 }); --浅度监听
如果监听的属性是基本数据类型,上面用法是没有问题的,但如果监听的属性是对象,则对象内部的数据有变化,上面写法是监听不到的,需要进行一个参数进行深度监听,具体语法如下:
vm.$watch("监听的实例属性名",function() { // 对于监听数据变化后的业务处理代码 },{deep: true}); --深度监听
B:实例方法调用:$mount()、$log()、$destroy()
4,自带过滤器&自定义过滤器
A:vue自带的过滤器有:
capitalize(首字母大写)、uppercase、currency、json( 相当于JSON.Stringify() )、debounce(后跟秒数,配合事件,延迟执行)
limitBy(参数1, 参数2) 常用语v-for数组,限制输出数量和从哪输出;参数1代表输出几个,参数2代表从第几个输出
filterBy(参数) 过滤数据,过滤含有参数的数据,配合input输入框,通过输入变量过滤,打到热搜索的效果
orderBy(参数) 对数据排序,参数为1时为正序,为-1时则倒序,其他什么参数呢?所以1和-1基本是常用情况
B:自定义过滤器语法 (对于时间戳的处理是比较常用的自定义过滤器)
Vue.filter("过滤器名称",function(参数...){
... //业务处理
return ...;
});
5,自带指令和自定义指令
指令是对HTML语法的扩展,必须以v-开头,一般我们口中的指令实际是指属性指令,使用该属性指令的元素讲具有对应的属性功能,下面的C则是指元素指令,与属性指令有所区别
A:自带指令:v-if、v-show、v-else、v-module、v-text、v-html、v-bind、v-on、v-el、v-cloak...
这里着重说下v-text和v-cloak:在模板中我们调用实例属性数据时通常这样{{ 实例属性 }},这样在网速比较慢的情况下,页面出现闪烁的时候会把花括号和里面的原始内容显示出来,这样用户体验不好,处理这种情况有2种方式:
1, 在较大段落元素上使用v-clock指令,并设置该元素的css: display:none
2, 使用v-text/v-html代替花括号即可,Vue2.0也支持这样做,且花括号方式可能被取消
B:自定义指令语法:
Vue.directive("指令名称",function(..){
this.el.style.background = 'red'; //这里的this代表new出来的实例,this.el代表原生的dom元素
});
模板中使用v-指令名称进行使用,或v-指令名称="参数",可以在调用指令是进行传参
定义指令名称时不加v-,模板使用时加v-
C: 自定义元素指令 (据说用处不大,可忽略跳过,它所想要达到的效果,组件已超越)
Vue.elementDirective("自定义元素名称",{
bind: function() {};
});
它不支持B情况语法,但B情况语法却默认也是bind
6,自定义键盘信息
Vue.directive('on'),keyCodes.ctrl = 17; //17是ctrl的键码 等号前的ctrl是定义ctrl的别名,可以随便取,实际绑定的就是键盘上的ctrl键
模板调用@keydown.ctrl ="自定义方法"
Vue1.0常用语法的更多相关文章
- iptables常用语法与案例
常用命令语法: [root@www ~]# iptables [-t tables] [-L] [-nv] 选项与参数: -t :后面接 table ,例如 nat 或 filter ,若省略此项目, ...
- Vue1.0用法详解
Vue.js 不支持 IE8 及其以下版本,因为 Vue.js 使用了 IE8 不能实现的 ECMAScript 5 特性. 开发环境部署 可参考使用 vue+webpack. 基本用法 1 2 3 ...
- Sql常用语法以及名词解释
Sql常用语法以及名词解释 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) D ...
- 2 hive的使用 + hive的常用语法
本博文的主要内容有: .hive的常用语法 .内部表 .外部表 .内部表,被drop掉,会发生什么? .外部表,被drop掉,会发生什么? .内部表和外部表的,保存的路径在哪? .用于创建一些临时表存 ...
- sql 常用语法汇总
Sql常用语法 SQL分类: DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE) DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL—数据控 ...
- ES6常用语法
ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015. 也就是说,ES6就是ES2015. ...
- python MVC、MTV 框架介绍 Django 模板系统常用语法
Django 框架简介一.MVC框架和MTV框架1.MVC 全名Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分.优势: 耦合性低 重用性高 生命 ...
- PHP中Smarty引擎的常用语法
PHP中Smarty引擎的常用语法 输出今天的日期: {$smarty.now|date_format:"%H:%M %A, %B %e, %Y"} 实际上用到了PHP的time( ...
- vue1.0+vue2.0实现选项卡
通常我们写tab选项卡的时候,一般都是用jq等去操作dom,给同级元素移除active类,然后,给被点击元素添加active类,用vue实现也是同样的原理,都是操作active类. 我们都知道用vue ...
随机推荐
- JUC组件扩展(二)-JAVA并行框架Fork/Join(一):简介和代码示例
一.背景 虽然目前处理器核心数已经发展到很大数目,但是按任务并发处理并不能完全充分的利用处理器资源,因为一般的应用程序没有那么多的并发处理任务.基于这种现状,考虑把一个任务拆分成多个单元,每个单元分别 ...
- atitit.印度教与java宗教的特点与观念对比 attilax总结
atitit.印度教与java宗教的特点与观念对比 attilax总结 1. Java就是一种宗教 1 2. Java的教义思想,社区理念,价值观念 2 2.1. 教学语言,类似与印度教的祭祀万能 2 ...
- Vivado Logic Analyzer的使用(二)
本文基于Vivado 2014.2,阅读前请参考前文http://blog.chinaaet.com/detail/37264 之前的设计都是出发后直接捕获数据.其实,与chipscope类似,可以设 ...
- Real-Time SQL Monitoring using DBMS_SQLTUNE
Real-Time SQL Monitoring reports are available from three locations: Enterprise Manager - Click the ...
- jsp中跳出循环
<c:otherwise> <c:set var="flag" value="true" /><!-- 设置flag --> ...
- TI_DSP_corePac_带宽管理 - 1.2(仲裁寄存器)
下图为仲裁寄存器,重要的是理解SDMAARB寄存器.在该寄存器中仅仅须要设计MAXWAIT值,PRI(优先级)设置要在外设(如FFTC,AIF2等)提供的仲裁寄存器中设置,由于是外设在訪问slave, ...
- 球队以及得分计算的SQL语句
首先题目是这样的: 球队表teams 比赛表matches 赢了得3分,平局的得1分,输了得0分. 思路: 一个球队的成绩分为两部分,作为主队的得分和作为客队的得分: 计算出一次比赛中具体得了多少分, ...
- node.js安装与入门使用
一个基于 Chrome V8 引擎的 JavaScript 运行环境. Node.js 的包管理器 npm,是全球最大的开源库生态系统. 提供事件驱动和非阻塞I/O API,可优化应用程序的吞吐量和规 ...
- xml传输过程中中文乱码
------------------------------------------request:----------------------------------------------- pu ...
- Linux基础命令(2)
Fskey servername scp命令 grep 命令 find 命令 echo 命令 xargs 命令 file 命令 cat 命令 /dev/null tar 打包 gzip 压缩 示例 ...