0
問題
我使用UI引導的dialog
服務在我的應用程序,該服務創建模態對話框,我這樣做,使用下面的方法對我的外表$scope
:將數據傳遞給角的嵌套控制器
$scope.showRouteEditDialog = function (template, route) {
// argument `route` is not currently used
var dialog = $dialog.dialog({
backdrop: true,
keyboard: false,
backdropClick: true,
templateUrl: template,
controller: 'RouteController'
});
dialog.open().then(function(result) {
alert(result); // This line is called when dialog is closed
});
}
這種方法在後面從局部視圖調用以下標記
<a href="#" ng-click="showRouteEditDialog('Templates/Content/Timeline/Item/Editor.html', route)"><i class="halflings-icon edit"></i></a>
我的對話處理一個的編輯(route
是主模型內的子模型),所以我想這條路線傳遞給對話框,這樣它會認爲是它自己的模式,無需瞭解外部模型什麼。
我對這個問題初始猜測是對的路線參數分配給dialog
變量,像dialog.route = route
,並在以後控制器中使用下面的代碼:儘管此方法創建一個依賴,沒有按
Application.controller('RouteController', ['$scope', 'dialog', function ($scope, dialog) {
// `dialog` is our dialog and it is injected with injector
doSomethingWith(dialog.route)
}]);
看起來像一個角度的做事方式
我也發現this post說我應該使用服務的目的,但它似乎像這個解決方案是這樣一個小問題矯枉過正。
問題什麼是從外控制器值傳遞給一個內層一個上的場景上述的角的方式。
謝謝
謝謝里面的 「路線」 的價值,它的工作,但它是如何工作的?我以前沒有使用「解決方案」。它是什麼? – Lu4
「成員將得到解決,並傳遞給控制器當地人」 - 來自:https://github.com/angular-ui/bootstrap/blob/master/src/dialog/README.md 你也有它在ui路由器或$ route服務作爲將用例特定參數傳遞到通用控制器的一種方式 –
謝謝,真正有用的帖子... – Lu4