![](https://img.kancloud.cn/62/d5/62d5e3b9c45401e50de25fb33c8f6c50_1280x720.png) ## 一、前端响应式框架VUE简介 * Vue (读音 /vjuː/,类似于 **view**) * Vue的官方网站是:https://cn.vuejs.org/ * 是中国的大神尤雨溪开发的,为数不多的国人开发的世界顶级开源软件 * 是一套用于构建用户界面的**渐进式框架**。Vue 被设计为可以自底向上逐层应用。(下文会介绍什么是渐进式框架及自底向上逐层应用的概念) * MVVM响应式编程模型,避免直接操作DOM , 降低DOM操作的复杂性。 ![](https://img.kancloud.cn/7c/c8/7cc82a6a40244d5e6ff87a3db9653586_578x300.png) + MVVM:页面输入改变数据,数据改变影响页面数据展示与渲染 - M(model):普通的javascript数据对象 - V(view):前端展示页面 - VM(ViewModel):用于双向绑定数据与页面,对于我们的课程来说,就是vue的实例 ## 二、VUE核心功能 * 基础功能:页面渲染、表单处理提交、帮我们管理DOM(虚拟DOM)节点 * 组件化开发:增强代码的复用能力,复杂系统代码维护更简单 ![](https://img.kancloud.cn/04/19/04197f9ddc6ab1e9095d0fd8eeba4e98_835x281.png) * 前端路由:更流畅的的用户体验、灵活的在页面切换已渲染组件的显示,不需与后端做多余的交互 * 状态集中管理:MVVM响应式模型基础上实现多组件之间的状态数据同步与管理 * 前端工程化:结合webpack等前端打包工具,管理多种静态资源,代码,测试,发布等,整合前端大型项目。 ## 三、渐进式框架 ![](https://img.kancloud.cn/04/33/0433b011a0029b0d30790fc9355335f3_696x522.png) 笔者理解的“渐进式框架”也非常简单,就是用你想用或者能用的功能特性,你不想用的部分功能可以先不用。**VUE不强求你一次性接受并使用它的全部功能特性**。 1. 场景一:公司刚开始一个项目,技术人员对Vue的掌握也不足够。那么我们就不能使用VUE了么?当然不是,如果你只是使用VUE做些**基础操作**,如:页面渲染、表单处理提交功能,那还是非常简单的,成熟技术人员上手也就一两天。完全可以用它去代替jquery。并不需要你去引入其他复杂特性功能。 2. 场景二:我们项目用了VUE,使用的效果也挺好。那么我们想逐渐实现代码组件化,实现代码的复用,或者是基于组件原型的跨项目的代码复用。那么我们就可以引入VUE的components组件特性了。 3. 场景三:我们的项目规模逐渐的变大了,我们可能会逐渐用到前端路由、状态集中管理、并最终实现一个高度工程化的前端项目。这些功能特性我们可以逐步引入,当然不用也可以。 所以VUE的适用面很广,你可以用它代替老项目中的JQuery。也可以在新项目启动初期,有限的使用VUE的功能特性,从而降低上手的成本。