zoukankan      html  css  js  c++  java
  • MVC 和 MVVM的区别

    MVC:是前后端分层开发的思想,M是指Model层,控制数据库的操作 ,C是指Controller. 是指逻辑处理 ,V是指View,视图层,对前端业务的处理

    MVVM:是前端视图层的分层开发思想。VM是M和V之间的调度者,V是页面中的视图,即页面中的html元素,M是页面中的数据,VM是M和V之间的调度,

    当V中的元素需要数据的时候就是通过,VM来调度,实际上就是页面中的逻辑处理,提供数据的双向绑定。

    MVVM的双向绑定的原理:
      MVVM的双向绑定即 view变换引起model变化 ,model变化引起view变化

      1.整个el模板进行扫描和指令分析,如果某个元素中是绑定的了事件就给这些元素绑定相应的事件,如果是某些元素中的由v-model v-bind等指令,就将该元素,绑定的data数据,以及要做的操作存放到Dep中指定的数据属性下。

      2.当触发视图修改了数据的时候,发布者就监听到相应的数据变换(Object.defineProperty 中的set),并调用set方法,对data中的数据进行修改 ,然后通知Dep中该数据的订阅者们,让他们对其视图进行相应的操作。

      

    Dep = {
      name:{//name是data中的 数据。
          _directives:[] //里面存放的是 data中数据所对的watches订阅者们。
        } }

      

  • 相关阅读:
    0.1.3 set的用法
    JoinPoint
    砝码组合(dfs)
    强大的【环绕通知】
    applicationContext.xml 模板
    各种jar包
    装饰博客(二)添加宠物
    装饰博客(一)添加背景图片
    拖拽功能的实现
    点击之后连接qq
  • 原文地址:https://www.cnblogs.com/panjingshuang/p/11925865.html
Copyright © 2011-2022 走看看