zoukankan      html  css  js  c++  java
  • AngularJS学习笔记(二)MVVM

    什么是MVVM

    MVVM模式是Model-View-ViewMode模式的简称。

    由视图(View)、视图模型(ViewModel)、模型(Model)三部分组成,通过这三部分实现UI逻辑、呈现逻辑和状态控制、数据与业务逻辑的分离。

    各层的职责

    Model用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。它具有对数据直接访问的权利,例如对数据库的访问,Model不依赖于ViewModel,也就是说,Model不关心会被如何显示或是如何被操作,也不包含任何用户使用的与界面相关的逻辑。

    View层依赖于ViewModel层,根据定义好的结构去显示数据,构建页面即可。

    ViewModel是Model层和View层的桥梁,也就是所谓的协议,有了协议,Model层和View层可以各干各的事情,而不用担心不必要的变动。

    下图是MVVM模式各层之间的访问情况:

    201107211637544419

    MVVM的优点

    1. 低耦合

    视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的"View"上,当View变化的时候Model可以不变,当Model变化的时候View也可以不变。

    2. 独立开发

    开发人员可以专注于业务逻辑和数据的开发(ViewModel),设计人员可以专注于页面设计。

    3. 可测试

    界面素来是比较难于测试的,而现在测试可以针对ViewModel来写。

    AngularJS是如何实现MVVM的

    Controller是个控制器,是个组合装置,可通过Service(Model)获取数据,然后绑定到Controller的$scope对象的ViewModel上,然后通过数据的双向绑定,体现到View页面上。

  • 相关阅读:
    zoj 1033 与其说是搜索,不如说是枚举
    hdu 4294 数学分析+搜索
    新的篇章
    Silverlight 利用DataGrid行加载事件动态控制行列显示
    (转)Excel中“不同的单元格格式太多”问题解决方法
    EasyUI tree的三种选中状态
    JS监听手机返回键
    Silverlight ComBox获取当前选中项的值
    DataGrdid 利用结果集反向转换成数据List
    silverlight 动态设置下拉框选中值
  • 原文地址:https://www.cnblogs.com/oneword/p/5838025.html
Copyright © 2011-2022 走看看