Pau*_*sak 26 javascript model-view-controller angularjs
我正在查看AngularJS主页上的示例- 特别是"添加一些控件".我不太明白它如何映射到MVC模式.
或多或少很清楚,模板(index.html)可以被视为视图,TodoCtrl从todo.js构建的对象作为控制器,但模型在哪里?属性类似于ng-model
映射到框架的一些内部部分,并且不直接暴露我们可以称为模型的对象.
将AngularJS称为MVC框架是否正确?
小智 22
MVC背后的核心思想是,在管理数据(模型),应用程序逻辑(控制器)和向用户呈现数据(视图)之间,您可以清楚地分离代码.视图从模型中获取数据以显示给用户.当用户通过单击或键入与应用程序交互时,控制器通过更改模型中的数据进行响应.最后,模型通知视图已发生更改,以便更新其显示的内容. 在Angular应用程序中,视图是文档对象模型(DOM),控制器 是JavaScript类,模型数据存储在对象属性中.
我没有读过Angular.但是,请记住,"真正的"MVC意味着模型包含业务逻辑,Controller负责将用户输入传递给模型,而View从模型中获取自己的数据.许多所谓的MVC框架实际上并没有以正确的方式实现MVC:它们使控制器过载负担很多,就像让Controller负责更新View一样.这不是控制器的目的,在这种情况下,你会得到所谓的"胖控制器".许多Web开发人员之间存在一种误解,认为View只是一个"模板".这既是真的,也是假的; 它是一个模板,但它直接从模型中获取自己的数据 - 而不是通过Controller.
但是当我开始说:我还没有读过Angular,但你可能已经自己了,你应该能够通过查看框架中不同的组件来确定Angular是否真的是一个MVC框架.
归档时间: |
|
查看次数: |
13835 次 |
最近记录: |