我有一個角度應用程序和幾個模塊。
正如你可以看到下面,我打電話mod2,在mod1template.html指令。
myvar在mod1Ctrl中獲取值
但是角度初始化孩子第一個和myvar在mod2的控制器中顯示爲空。
當我GOOGLE了它,有一些解決方案,但任何事情爲我的情況。
預先鏈接適用於父母和孩子都是指令的情況,但我的mod1沒有任何指令。
我不想傳參數作爲屬性角度等待父控制器
有沒有更多的解決方案,我的情況?
mod1template.html:
<div>
<mod2-dir></mod2-dir>
</div>
angular.module("angApp.mod1", ["ngRoute"])
.config(["$routeProvider", "$locationProvider", function ($routeProvider, $locationProvider) {
$routeProvider.when("/:myvar1/:myvar2\\_:id", {
templateUrl: "Angular/mod1template.html",
controller: "mod1Ctrl"
});
}])
.controller("mod1Ctrl", ["$routeParams", "$scope", "mod1DataService", function ($routeParams, $scope, mod1DataService) {
$scope.myvar = mod1DataService.myvar;
}
angular.module("angApp.mod2", ["ngRoute"])
.directive("mod2Dir", function() {
return {
restrict: "E",
templateUrl: "Angular/mod2template.html",
controller: "mod2Ctrl"
};
})
.controller("mod2Ctrl", ["$scope", function ($scope) {
alert($scope.myvar.Id);
}
您可以使用$ broadcast或$ emit根據ob控制器如何放置。 –
非常感謝,$廣播爲我工作。如果你發佈它作爲答案,我可以接受 –
我加了答案 –