介绍Vue

一、Vue.js 是什么

       Vue.js(读音 /vjuː/, 类似于 view) 是一套构建用户界面的 渐进式框架。与其他重量级框架不同的是,Vue 采用自底向上增量开发的设计。Vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,Vue 完全有能力驱动采用单文件组件Vue生态系统支持的库开发的复杂单页应用。

     Vue.js 的目标是通过尽可能简单的 API 实现响应的数据绑定组合的视图组件

     Vue.js是一个轻巧、高性能、可组件化的MVVM库,同时拥有非常容易上手的API。

     Vue.js是一个构建数据驱动的Web界面的库。

二、Vue.js的特性

       1.易用(使用成本低);

       2.灵活(生态系统完善,适用于任何规模的项目);

       3.高效(体积小,优化好,性能好)。

三、vue中两个核心点
       1.响应式数据绑定 
         当数据发生变化是,vue自动更新视图。
         它的原理是利用了 Object.definedProperty 中的setter/getter 代理数据,监控对数据的操作。(这也是为什么vue不支持ie8 以及更早的ie浏览器的原因)。

       2.组合的视图组件

        ui页面映射为组件树;

        划分组件可维护、可重用、可测试。

四、MVX框架模式了解

       MVX框架模式:MVC+MVP+MVVM

      1.MVC:Model(模型)+View(视图)+controller(控制器),主要是基于分层的目的,让彼此的职责分开。
         View通过Controller来和Model联系,Controller是View和Model的协调者,View和Model不直接联系,基本联系都是单向的。
         用户User通过控制器Controller来操作模板Model从而达到视图View的变化。
       2.MVP:是从MVC模式演变而来的,都是通过Controller/Presenter负责逻辑的处理+Model提供数据+View负责显示。
          在MVP中,Presenter完全把View和Model进行了分离,主要的程序逻辑在Presenter里实现。
并且,Presenter和View是没有直接关联的,是通过定义好的接口进行交互,从而使得在变更View的时候可以保持Presenter不变。
        MVP模式的框架:Riot.js。
      3.MVVM:MVVM是把MVC里的Controller和MVP里的Presenter改成了ViewModel。Model+View+ViewModel。
         View的变化会自动更新到ViewModel,ViewModel的变化也会自动同步到View上显示。
         这种自动同步是因为ViewModel中的属性实现了Observer,当属性变更时都能触发对应的操作。
         MVVM模式的框架有:AngularJS+Vue.js和Knockout+Ember.js后两种知名度较低以及是早起的框架模式。

     View 是HTML文本的js模板。
     ViewModel是业务逻辑层(一切js可视业务逻辑,比如表单按钮提交,自定义事件的注册和处理逻辑都在viewmodel里面负责监控俩边的数据)。
     Model 数据层 对数据的处理(比如增删改查)。

五、虚拟DOM
       js的运行速度已经很快了,然而大量的DOM 操作就会变得很慢,但是前端本身就是要通过JS处理DOM 来更新视图数据的。 这样在更新数据后会重新渲染页面,这样就造成在没有改变数据的地方也重新渲染了DOM节点。这样性能方面就会很受影响。

       利用在内存中生成与真实DOM与之对应的数据结构,这个在内存中生成的结构称之为虚拟DOM。 
       当数据发生变化时,能够智能的计算出重新渲染组件的最小代价并应用到DOM操作上。vue就是利用了这一点。(vue 渲染组件的步骤图:)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值