根據https://angular-ui.github.io/bootstrap/#/modal,我要通過關閉如何將angular-ui-bootstrap模態的結果傳遞給父項而不關閉?
$uibModalInstance.close($scope.selected.item);
通過從模態到母體結果而不關閉但在示例代碼,它們僅示出一個通過結果給父我想要傳遞數據到家長當該項目被點擊,但我不知道這樣做。我真的需要幫助。謝謝。
根據https://angular-ui.github.io/bootstrap/#/modal,我要通過關閉如何將angular-ui-bootstrap模態的結果傳遞給父項而不關閉?
$uibModalInstance.close($scope.selected.item);
通過從模態到母體結果而不關閉但在示例代碼,它們僅示出一個通過結果給父我想要傳遞數據到家長當該項目被點擊,但我不知道這樣做。我真的需要幫助。謝謝。
這是關於控制器之間通信的一個相當常見的問題,因爲您不想關閉模型並想將數據傳遞到不同的控制器。
問題的最快途徑是使用$broadcast
。在你的模態的控制,這樣寫:
// Make sure to use $rootScope
$rootScope.$broadcast("modalDataEventFoo", {selectedItem: $scope.selected.item});
現在,在父控制器:
$scope.$on("modalDataEventFoo", function(data) {
console.log("got the data from modal", data.selectedItem);
});
通信其他參考資料控制器之間:
請注意,傳遞給偵聽器函數的參數是:(事件,數據),而不僅僅是(數據),如上例所示。 –
另一種方式是份額父控制器和模態控制器宣佈在選項scope
屬性之間的範圍:
var modalInstance = $uibModal.open({
animation: $scope.animationsEnabled,
templateUrl: 'myModalContent.html',
controller: 'ModalInstanceCtrl',
size: size,
scope: $scope,
resolve: {
items: function() {
return $scope.items;
}
}
});
入住這plunker在模態包含綁定到變量的輸入元素$scope.shared.name
: http://plnkr.co/edit/4xiEXATxAnvDKBSXxzQd
你c使用事件,共享服務等。 –