【发布时间】:2018-06-07 23:51:39
【问题描述】:
当我使用 VS2015 模板创建新控制器时,我得到以下代码:
(function () {
'use strict';
angular
.module('app')
.controller('controller', controller);
controller.$inject = ['$scope'];
function controller($scope) {
$scope.title = 'controller';
activate();
function activate() { }
}
})();
问题:
为什么 VS 模板将代码包装在自调用函数中?
activate()函数是怎么回事?我想在里面写什么代码,为什么我需要一个单独的函数而不是在控制器里面写代码?将
controller.$inject = ['$scope'];视为一种更好的做法,然后将依赖项写入数组(作为控制器函数的参数)。
【问题讨论】:
标签: angularjs visual-studio-2015 angularjs-controller angularjs-injector self-invoking-function