Vue.js(渐进式JavaScript框架)
渐进式:逐步实现新特性。
Vue (发音为 /vjuː/,类似 view) 是一款用于构建用户界面的JavaScript框架。它基于标准HTML、CSS和JavaScript构建,并提供了一套声明式的、组件化的编程模型,帮助开发者高效地开发用户界面。
Vue核心库只关注视图层。不关注网络通信和页面跳转。
Soc:关注点分离原则。因为Vue的边界很明确
视图层(只管视图):HTML+CSS+JS:视图:给用户看,刷新后台给的数据
网络通信:axios(前端通信框架)axios中文网|axios API 中文文档 | axios (axios-js.com)
页面跳转(控制视图跳转):vue-router
状态管理(所有东西统一管理):vuex
Vue-UI:比如ICE:快速开始 | 飞冰 ICE
vue-element-admin:vue-element-admin (panjiachen.github.io)
Vue-UI:是一个可视化图形界面,方便你去创建、更新和管理vue项目,包括下载router,vuex,axios,elementui等插件,配置好一些属性以及依赖关系,方便我们使用
MVC(同步通信为主(同步缺点会阻塞)):M(Model): 模型 V(View): 视图 C(Controller): 控制器
MVP(异步通信为主):Model、View、Presenter
MVVM(异步通信为主):Model、View、ViewModel
View层(只管数据展示):JSP {{$ }}、{{# }}
DATA(Model层) : 专门存放数据
vm(mvvm) : 数据双向双向绑定
MVVM模式的实现者:
Model:模型层,在这里表示JavaScript对象
View:视图层,在这里表示DOM(HTML操作的元素)
ViewModel:连接视图和数据的中间件,Vue.js就是MVVM中的ViewModel层的实现者
ViewModel能够观察到数据的变化,并对视图对应的内容进行更新
ViewModel能够监听到视图的变化,并能够通知数据发生改变
虚拟Dom:利用内存;
计算属性-->Vue特色
Vue.js特点:综合了Angular(模块化)和React(虚拟DOM)的优点。如:实现模块化开发、路由、状态管理等新特性。
Vue支持MVVM模式的前端化框架,而且也支持虚拟化DOM。
Vue.js优点:
轻量级,体积小是一个重要指标。
移动优先。更适合移动端。
易上手,学习曲线平稳,文档齐全。
吸取了Angular(模块化)和React(虚拟化DOM)的长处,并拥有自己独特的功能。如:计算属性。
开源,社区活跃度高。