Vue 是一套用于构建用户界面的渐进式开源JavaScript框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,方便与第三方库或既有项目整合。另一方面,当与现代化的工具链以及各种支持类库结合使用时,Vue 也完全能够为复杂的单页应用提供驱动。Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定和组合的视图组件。
在21世纪初,当谷歌发布了Google Map和GMail,两个在浏览器内运行的应用程序,浏览器功能逐渐丰富,开发人员开始在Web平台上进行构建,而工程师则负责平台本身的浏览器、Web标准、浏览器API和JavaScript语言的开发。如jQuery和Mootools的重量级库是最早基于JavaScript的开发的大型框架,改变了数百万人编写JavaScript的方式。在此基础上,第一批主流的JavaScript框架,如Backbone,Ember,Knockout,和AngularJS 得以产生。而作为第二波JavaScript框架主要以React、Angular和Vue为主。其中Vue2.0发布以来,Vue快速得到了国内开发者的热捧。
Vue.js其核心思想是数据驱动和组件系统。数据驱动,也叫双向数据绑定。 为了更好地管理一个大型应用程序,往往需要将其分割为小而独立、具有复用性的组件。在Vue中,组件是基础HTML元素的拓展,可方便地自定义其数据与行为。Vue.js数据观测原理在技术实现上,利用ES5Object.defineProperty和存储器属性: getter和setter,称为基于依赖收集的观测机制。核心是VM,即ViewModel,保证数据和视图的一致性。Vue组件系统指的是将应用类UI看作全部是由组件树构成。Vue.js同时具备异步批量DOM更新,动画系统以及高可扩展性等特点。
资料来源:
Vue.js中文文档