angular.controller是否始终采用匿名函数

时间:2016-10-02 06:19:10

标签: javascript angularjs

我是javascript以及AngularJS的新手。我已经搜索了一个示例,其中可以在控制器注册期间传递已定义的函数。例如,我有点不确定我是否可以将'firstTestControllerFunction'注册为控制器函数。

var application=angular.module("AngularTest",[]);

function firstTestControllerFunction($scope) {

$scope.message="Message from First Test Controller";

}//firstControllerFunction closing

我不确定,因为我在这方面的知识有限,我可以做application.controller(“MyController”,|使用现有的'firstTestControllerFunction'|)。任何帮助或指向正确的方向将是真诚的感谢。

1 个答案:

答案 0 :(得分:2)

定义控制器时,可以使用匿名函数或使用已定义的函数。关键是使用函数名称,而不是在声明中调用。此代码无效:

// INVALID! you should not invoke the function firstTestControllerFunction
application.controller("MyController", firstTestControllerFunction())   

但是这段代码完全有效:

var application=angular.module("AngularTest",[]);

function firstTestControllerFunction($scope) {
    $scope.message="Message from First Test Controller";
}

application.controller("MyController", firstTestControllerFunction).