我的应用程序中的所有控制器都使用$rootScope
变量selectedDashboard
。在此示例中,我在$rootScope
控制器中设置了miniCtrl
变量。
我也在使用路由,并根据您在其他控制器上的哪个视图将更改selectedDashboard
的值。我不知道如何使用服务,因为我不希望所有控制器共享一个设定值。控制器轮流更改值。我正在适当地使用$rootScope
吗?或者我应该做些不同的事情吗?
angular.module('ciscoImaDashboardAdmin',[])
.controller('miniCtrl', function ($scope, $rootScope) {
$scope.selectDashboard = function(e) {
var newDashboardNum = e.target.attributes.data.value;
$rootScope.selectedDashboard = newDashboardNum;
}
});
angular.module('ciscoImaDashboardAdmin',[])
.controller('otherCtrl', function ($scope, $rootScope, dummyData) {
var selectedDashboard = $rootScope.selectedDashboard;
var data;
for(var d in dummyData.dashboardsData) {
if(dummyData.dashboardsData[d].dashboard_number == selectedDashboard) {
data = dummyData.dashboardsData[d];
}
}
});