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一定要是唯一值。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容