vue

传送门---个人网站

Vue学习及参考总结整理

>var vm = new Vue({
  el: "选择器",  挂载到页面的那个元素里,即确定vue的作用范围  外部可通过vm.$el访问,得到的是一个原生dom元素,可进行对应操作
  a: ' ',  //自定义属性  外部可通过vm.$options访问
  data: { }, //实例属性都在这里面,外部通过实例名,即vm.$data调用
  computed: { }, //计算属性,也是实例属性,只是以方法的形式存在,并可以有逻辑运算的属性
  method: { }, //实例方法都在这里
  watch: { }, //对data和computed的属性进行监听,当属性有变化时自动触发,以方法的形式存在 外部通过$.watch调用
  //注意:以上属性和方法,实例内部都通过this调用,外部则通过对应的实例方法访问
  //在vue的生命周期过程中,它自身还提供了一系列的钩子函数供我们使用,进行自定义逻辑的注入: <br>  
  created: function(){ 实例已经创建 }
  beforeCompile: function(){ 模块编译之前 }
  compiled: function(){ 模块编译之后;即模板占位符被是内容替换}
  ready: function(){ 模板插入到文档中了;相当于window.onload }
  注意: 以上4个方法在对象被实例化后即按顺序执行,以下2个方法需通过事件触发,并通过调用 实例名.$destory() 才执行
  beforeDestroy: function(){ 对象销毁之前 }
  destroyed: function(){ 对象销毁之后 }
});

Vue对象解析

  • 对象属性

data、el、options、watch、computed

  • 对象方法

生命周期之钩子函数

  • 对象实例访问和调用属性和方法

A:实例属性调用:$options、$el、$data、$watch

这里着重说下$watch,它的一般语法为:
vm.$watch("监听的实例属性名",function(newVal, oldVal) { // 对于监听数据变化后的业务处理代码 }); --浅度监听
如果监听的属性是基本数据类型,上面用法是没有问题的,但如果监听的属性是对象,则对象内部的数据有变化,上面写法是监听不到的,需要进行一个参数进行深度监听,具体语法如下:
vm.$watch("监听的实例属性名",function(newVal, oldVal) { // 对于监听数据变化后的业务处理代码 },{deep: true});  --深度监听

B:实例方法调用:$mount()、$log()、$destroy()

  • 自带过滤器&自定义过滤器

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 ...;

});

以下内容可忽略
自定义过滤器之双向过滤器 //据说应用不多,暂且放着

Vue.filter("过滤器名称",{

    read: function(input) { return ... },   //model-view

    write: function(val) { return ... }  //view-model

})
  • 自带指令和自定义指令

    指令是对HTML语法的扩展,必须以v-开头,一般我们口中的指令实际是指属性指令,使用该属性指令的元素讲具有对应的属性功能,下面的C则是指元素指令,与属性指令有所区别

A:自带指令:v-if、v-show、v-else、v-model、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

  • 自定义键盘信息
Vue.directive('on'),keyCodes.ctrl = 17;  //17是ctrl的键码  等号前的ctrl是定义ctrl的别名,可以随便取,实际绑定的就是键盘上的ctrl键

模板调用@keydown.ctrl ="自定义方法"

后续将有其它体验心得问题

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,496评论 6 501
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,407评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,632评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,180评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,198评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,165评论 1 299
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,052评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,910评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,324评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,542评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,711评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,424评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,017评论 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,668评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,823评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,722评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,611评论 2 353

推荐阅读更多精彩内容

  • 1.安装 可以简单地在页面引入Vue.js作为独立版本,Vue即被注册为全局变量,可以在页面使用了。 如果希望搭建...
    Awey阅读 11,014评论 4 129
  • 这篇笔记主要包含 Vue 2 不同于 Vue 1 或者特有的内容,还有我对于 Vue 1.0 印象不深的内容。关于...
    云之外阅读 5,048评论 0 29
  • Vue 实例 属性和方法 每个 Vue 实例都会代理其 data 对象里所有的属性:var data = { a:...
    云之外阅读 2,207评论 0 6
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,651评论 18 139
  • 以下内容是我在学习和研究Vue时,对Vue的特性、重点和注意事项的提取、精练和总结,可以做为Vue特性的字典; 1...
    科研者阅读 14,077评论 3 24