【发布时间】:2014-04-14 22:39:12
【问题描述】:
在我的 Angular 应用程序中,我有一些我认为应该在全局控制器中的功能。在服务器端 MVC 框架中,通常有一个所有其他控制器都扩展的全局控制器,这是我放置这些功能的地方。我想知道 Angular 是否有类似的东西。
所以目前我在app.js:
'use strict';
// Declare app level module
var app = angular.module('app', ['ngRoute']).config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
// Possible routes can go here
}]);
这个在controllers.js:
app.controller('DownloadsController', function ($scope) {
});
我希望能够在我的应用程序中添加下载,所以我会在DownloadsController 中写一个$scope.addDownload = function() { ... }。这将起作用,但是我希望能够在我的应用程序的任何位置添加下载,这意味着无论我在哪个控制器中都调用 addDownload() 函数。
我能否定义一个全局控制器来保存addDownload() 函数并能够从我的所有控制器中调用该函数?
【问题讨论】:
-
这是您将使用指令或提供者的目的。
-
您可以创建一个服务来重用这些功能并注入您想要的任何控制器......
-
这就是我刚才所说的...... :) 知道你的角度。与你的角度合一。
-
或者,只需将控制器添加到 并将其用作应用级控制器。
标签: javascript angularjs controllers