更新其他控制器範圍我是AngularJS一個新手,所以也許我在看這個錯誤的方式。如果是這樣,請指向正確的方向。使用AngularJS服務從其他模塊
基本上我想更新駐留在另一個模塊中的另一控制器一些DOM元素。 我試圖通過服務發送數據,但它似乎沒有在目標範圍上更新。
var mainModule = angular.module('main', []);
var appModule = angular.module('app', ['main']);
appModule.controller("appCtrl", function ($scope, $routeParams, mainService) {
$scope.mainService = mainService;
var initialize = function() {
$scope.mainService.currentID = $routeParams.productId;
}
initialize();
});
mainModule.factory('mainService', function() {
var mainService = { currentID: 0 };
return mainService
});
mainModule.controller('mainCtrl', ['$scope', 'mainService', function ($scope, mainService) {
$scope.mainService = mainService;
$scope.function1Url = "function1/" + $scope.mainService.currentID;
$scope.function2Url = "function2/" + $scope.mainService.currentID;
//CurrentID is always 0!!
}]);
我預計,在appCtrl
調用initialize()
功能時,它會看到currentID
PARAM其中也使用mainCtrl
服務。
您忘了注入$ routeParams –