VueJS 简介
Vue是⼀套⽤于构建⽤户界⾯的渐进式框架。与其它⼤型框架不同的是,Vue 被设计为可以⾃底向上逐层应⽤。Vue 的核⼼库只关注视图层,不仅易于上⼿,还便于与第三⽅库或既有项⽬整合。另⼀⽅⾯,当与现代化的⼯具链以及各种⽀持类库结合使⽤时,Vue 也完全能够为复杂的单⻚应⽤提供驱动。
优点:
1.轻量级的框架
Vue.js 能够⾃动追踪依赖的模板表达式和计算属性,提供 MVVM 数据绑定和⼀个可组合的组件系 统,具有简单、灵活的 API,使读者更加容易理解,能够更快上⼿。
2.双向数据绑定
声明式渲染是数据双向绑定的主要体现,同样也是
Vue.js 的核⼼,它允许采⽤简洁的模板语法将数据声明式渲染整合进 DOM。
3.指令
Vue.js 与⻚⾯进⾏交互,主要就是通过内置指令来完成的,指令的作⽤是当其表达式的值改变时相应地将某些⾏为应⽤到DOM 上。
4.组件化
组件是Vue.js 最强⼤的功能之⼀。组件可以扩展 HTML 元素,封装可重⽤的代码。在Vue 中,⽗⼦组件通过 props 传递通信,从⽗向⼦单向传递。⼦组件与⽗组件通信,通过触发事件通知⽗组件改变数据。这样就形成了⼀个基本的⽗⼦通信模式。在开发中组件和HTML、JavaScript 等有⾮常紧密的关系时,可以根据实际的需要⾃定义组件,使开发变得更加便利,可⼤量减少代码编写量。组件还⽀持热重载。当我们做了修改时,不会刷新⻚⾯,只是对组件本身进⾏⽴刻重载,不会影响整个应⽤当前的状态。CSS 也⽀持热重载。
5.客户端路由
Vue-router 是 Vue.js 官⽅的路由插件,与 Vue.js 深度集成,⽤于构建单⻚⾯应⽤。Vue 单⻚⾯应⽤是基于路由和组件的,路由⽤于设定访问路径,并将路径和组件映射起来,传统的⻚⾯是通过超链接实现⻚⾯的切换和跳转的。
6.状态管理
状态管理实际就是⼀个单向的数据流,State 驱动 View 的渲染,⽽⽤户对 View 进⾏操作产⽣
Action,使 State 产⽣变化,从⽽使 View 重新渲染,形成⼀个单独的组件。
开发模式:MVC 与 MVVM
MVC
MVC是后端开发的⼀个经典设计思想,M:Model(数据模型层),V:View(视图层),C:Controller(控制层)。其中M层主要负责数据的CRUD,V层主要负责⻚⾯的展示,C层主要负责业务逻辑的处理
MVVM
MVVM是前端借鉴MVC思想发展⽽来的,其中M:Model(数据模型层),V:View(视图层),VM:ViewModel(视图模型层)。
优点:
a. 低耦合。视图(View)可以独⽴于Model变化和修改,⼀个ViewModel可以绑定到不同
的"View"上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。
b. 可重⽤性。你可以把⼀些视图逻辑放在⼀个ViewModel⾥⾯,让很多view重⽤这段视图逻辑。
c. 独⽴开发。开发⼈员可以专注于业务逻辑和数据的开发(ViewModel),设计⼈员可以专注于⻚⾯设计。
d. 可测试 。界⾯素来是⽐较难于测试的,⽽现在测试可以针对ViewModel来写易⽤灵活⾼效。
VueJs 起步
任务:使⽤
VueJs在⻚⾯上输出Hello Vue!
步骤:
1.引⼊Vue(通过CDN或本地引⼊)
2.创建Vue示例
3.绑定数据
理解:
1. 我们在使⽤jQuery的时候知道,引⼊jQuery后全局就会多了$变量以供使⽤,⽽我们引⼊vue后,全局就会多了Vue这个变量
2. 有了Vue这个变量,我们就可以在
3. 既然是函数,就可以传⼊⼀定的参数,这个参数是js对象,对象⾥⾯的参数⽤键值对的形式表现,常⻅的参数如:data,methods
模板语法
含义:模板:动态的html⻚⾯,包含了⼀些JS语法代码
分类:双括号表达式
v-指令
双括号表达式:
作⽤:向⻚⾯输出数据,也可以调⽤对象的⽅法
语法:{{ 表达式 }}