2

我是 AngularJS 菜鸟,但对以前的 MVC/MVVM 框架非常熟悉。我来自 OO 背景,但投入了大量时间来学习 Javascript 的准功能特性。假设我理解闭包但从未有意义地使用它们。

我试图弄清楚 AngularJS 中控制器概念和 $scope 概念之间的区别。

下面我在使用 '$scope' 对象而不是在 AngularJS 中引用'scope' 的概念时要小心。

在 AngularJS 概念概述 ( http://docs.angularjs.org/guide/concepts ) 中,控制器被描述为使用范围作为视图和控制器之间的粘合剂。范围看起来像一个模型容器。

这是有道理的。

没有意义的是我见过的所有将函数添加到 $scope 对象的示例。$scope 对象是控制器的主体吗?如果是这样,是不是这个对象命名不当,因为它与“范围”概念混淆了?

-喜欢-AngularJS-但-困惑

4

1 回答 1

5

$scope 是视图和控制器都知道的对象...

它实际上不是控制器本身,但通过它您可以传入对数据和方法的引用并在视图中使用它们。

Angular 中的控制器更像是一个演示模型,它包含一个对象,该对象是视图和控制器的“共同朋友”……至少我是这么想的 :)

于 2013-06-30T20:13:18.270 回答