首先我们需要了解一下什么是vue
Vue.js 是一种流行的前端 JavaScript 框架,用于构建用户界面。
Vue.js 被设计为自底向上逐层应用,它的核心库专注于视图层,易于与其他库或已有项目整合。Vue.js 的目标是通过尽可能简单的 API 实现响应式数据绑定和组合的视图组件。
vue的优缺点
优点:
- 组件化开发,提升效率,方便复用,便于协同开发
- 单页面路由
- 易于结合其他的第三方库
- 丰富的api方法
- 轻量高效,虚拟DOM
- MVVM,数据驱动视图
- 轻量级的框架
缺点:
- 缺少高阶教程和文档
- 生态环境不如angular和react
- 社区不大
- 不支持ES6的浏览器无法使用,如ie10
- 报错不明显,适合单人开发或者中小型项目
- 不利于SEO优化
核心概念
组件化开发
优点很多,可以很好的降低数据之间的耦合度。将常用的代码封装成组件之后,就能高度的复用,提高代码的可重用性。一个页面/模块可以由多个组件所组成。
数据驱动
在vue中,数据的改变会驱动视图的自动更新。传统的做法是需要手动改变DOM来使得视图更新,而vue只需要改变数据,剩下的vue帮你做。
MVVM
M:model模型,在vue中指数据
V:view视图, 用户在屏幕上看到的结构、布局和外观(UI)
VM:ViewModel 视图模型,监听视图或者模型的变化,更改模型或视图
运行原理:
当view变化,VM监听后更改model
当model变化,VM监听后更改view
虚拟dom
浏览器中的一个概念,用JS对象来表示页面上的元素,并提供用于操作DOM对象的API