Vue(读音/Vju:/,类似于View)是一套用于构建用户界面的渐进式框架,与其他大型框架相比,Vue被设计为可以自底向上逐层应用。其他大型框架往往一-开始就对项 目的技术方案进行强制性的要求,而Vue更加灵活,开发者既可以选择使用Vue来开发一个全新项目,也可以将Vue引入到一个现有的项目中。
另一方面,当Vue与现代化的工具链以及各种支持类库结合使用时,也完全能够为复杂的单页应用提供驱动。工具链是指在前端开发过程中用到的一系列工具,例如,使用脚手架工具创建应用,使用依赖管理工具安装依赖包,以及使用构建工具进行代码编译等。
VUE的工作原理:
从上图中可以看出,MVVM主要包含3个部分,分别是Model、View 和ViewModel。Model指的是数据部分,主要负责业务数据; View指的是视图部分,即DOM元素,负责视图的处理。ViewModel是连接视图与数据的数据模型,负责监听Model或者View的修改。
在MVVM中,数据(Model)和视图(View)是不能直接通信的,视图模型(ViewModel)就相当于一个观察者,监控着双方的动作,并及时通知进行相应操作。当Model 发生变化的时候,ViewModel能够监听到这种变化,并及时通知View做出相应的修改。反之,当View发生变化时,ViewModel监听到变化后,通知Model进行修改,实现了视图与模型的互相解耦。
目前市场三大前端主流框架分别是Angular、React和Vue。Vue之所以被开发者青睐,主要是Vue有Angular和React框架两者的优势,并且Vue的代码简洁、上手容易,在市场上也得到大量应用。
下面我们就对Vue的特性进行简单介绍。
1.轻量级
Angular的学习成本高,使用起来比较复杂,而Vue相对简单、直接,所以Vue使用起来更加友好。
2.数据绑定
Vue是一个MVVM框架,数据双向绑定,即当数据发生变化的时候,视图也就发生变化,当视图发生变化的时候,数据也会跟着同步变化,这也算是Vue的精髓之处。尤其是在进行表单处理时,Vue的双向数据绑定非常方便。
3.指令
指令主要包括内置指令和自定义指令,以“v-”开头,作用于HTML元素。指令提供了一些特殊的特性, 将指令绑定在元素上时,指令会给绑定的元素添加一些特殊的行为。例如,v-bind动态绑定指令、v-if 条件渲染指令、v- for列表渲染指令等。
4.插件
插件用于对Vue框架功能进行扩展,通过MyPlugin.install完成插件的编写,简单配置后就可以全局使用。常用的扩展插件有vue-router、Vuex 等。
Vue很多特性与Angular和React有着相同的地方,但是也有着性能方面的差别。
Vue使用基于依赖追踪的观察系统并且使用异步队列更新,所有的数据都是独立触发的,提高了数据处理能力。
React和Vue的中心思想是一切都是组件,组件之间可以实现嵌套。React 采用了特殊的JSX语法,Vue中也推崇编写以*.vue后缀命名的文件格式,对文件内容都有一些规定, 两者需要编译后使用。
值得一提的是,React依赖虚拟DOM,而Vue使用的是DOM模板。Vue 在模板中提供了指令、过滤器等,可以非常方便和快捷地操作DOM。推荐将Vue 使用到具有复杂交互逻辑的前端应用中,以确保用户的体验效果。
(责任编辑:代码如诗) |