Vue.js

介绍

Vue.js 是什么

Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。

初始化

在js文件中引入开发版本或者生产版本

我们在外部导入vue,element ui 等文件时,console会出现这样的提示,对于开发版本,会默认向控制台打印:

后台显示

他提示我们要在开发模式下进行,而我们已经是开发模式了,尽管这并不会影响使用,但是稍微有点强迫症的我还是想把他给解决掉,方法如下

如图所示

如果你不会写上图复杂的代码,就搜索一个扩展名并安装就可以了(如下图所示)

vue 3 Snippets

一.初始Vue

第一步:给vue准备一个容器(app)

在页面中,通过插值表达式可以直接使用Vue管理的数据。注意Vue管理的数据是响应式的,所谓响应式,指的是,当前数据发生改变时,会重新渲染页面

如图所示

第二步:创建一个vue对象

创建vue
修改

# el选项,指定当前Vue实例,操作的容器

# v-on:指令用于绑定事件

# data选项,用于存储当前Vue实例管理的数据 // data选项里面管理的数据,会被添加到Vue实例身上,这里就是vm身上。 // data选项里面管理的数据,其实会被Vue实例身上的_data进行代理;并将代理过后的数据再添加到Vue实例身上,方便直接调用。

二.Vue的响应式原理

操作_data,真正改变的是data,此时就可以将_data当做是data的代理对象。

 因为对象是引用类型,在传递时,传的是地址

代理对象的基本理解

Vue的响应式原理,就用到了Object.defineProperty,给代理对象添加属性。

01.我们先定义一份原始数据,也就是被代理对象

let data={name:'张三',age:18}

02.再定义一个空的代理对象

03.使用Object.defineProperty给代理对象添加属性

如图

如何给对象添加成员

let  obj = { }

// 方式1:对象名.属性的方式,给对象添加成员obj.name='吴亦凡'// 方式2:对象名['属性名']的方式,给对象添加成员obj['age']=30// 方式3:通过Object对象的defineProperty方法,给指定的对象添加指定的属性// 这种方式,给对象添加成员,尽管繁琐,但是可以配置更多的功能。// 默认添加的属性是不允许删除的,如果要允许删除,就需要添加configurable配置。// 默认添加的属性是不允许枚举的,所谓枚举指的就是遍历。

如图所示

三.Vue的常用指令

v-bind:用于绑定属性,通过v-bind:绑定过的属性,可以在属性值可以写表达式

v-on:用于绑定事件,通过v-on:绑定过的事件,可以指定Vue实例定义的方法 

例如

 v-bind:可以用:简写。

 v-on:可以用@简写。 

通过v-model指令,可以实现对数据的双向绑定,

 v-model指令是 v-bind:value 和 v-on:input 的简写。

如图

四. 条件渲染和列表渲染

<!-- v-if指令用于条件渲染,表达式返回true,显示元素;否则不显示元素。 -->

<!-- v-show指令也是用于条件渲染,表达式返回true,显示元素;否则不显示元素。 -->

v-if 和 v-show 如何选择 如果页面需要反复切换显示和隐藏,用v-show。 如果页面中有很多模块需要隐藏,用户可能只对其中的某个模块感兴趣,用v-if, 所有的模块首屏加载时,全部都不渲染,当用户选择指定的模块后,再渲染指定的模块。


注意:v-if 的表达式返回false,会生成对应的元素。

v-show的表达式返回true,元素正常生成,通过display样式去控制显示和隐藏。

所以,如果元素需要反复切换显示和隐藏使用v-show;如果只是页面加载是判断是否显示使用v-if


<!-- v-if,v-else-if,v-else可以组成多重判断结构。注意:中间不能有断层。 -->

v-for指令,用于循环列表。

语法:v-for="(每一项,索引) in 数组",渲染列表时,为了提高渲染性能,

通常都要绑定一个key。key一定要是唯一值。

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

推荐阅读更多精彩内容