除了UI路由器空,我使用UI的自舉的$modal
服務。
我用的state
(與URL參數)的onEnter
財產resolve
S(一個模式內實際傳遞)來激活情態動詞(如在UI路由器的docs|FAQ提到)。
我試圖訪問$stateParams
,但它似乎是一個空物件當決議火災時。
function onEnter($modal, $state) {
// simple handler
function transitionToOverlay() {
return $state.transitionTo('parent');
}
// actual modal service
$modal
.open({
size: 'sm',
resolve: { getY: getY },
controller: 'ChildCtrl as child',
template: template
})
.result
.then(transitionToOverlay)
.catch(transitionToOverlay);
}
// resolve
function getY($state, $stateParams) {
console.log('State resolve getY...');
console.log($stateParams); // returns {} empty object
return 'y'; // just a dummy resolve
}
出於演示目的,這裏是plnkr。
我不認爲這允許我們將控制器的決心「注入」它。 – srph 2015-01-17 07:13:07
@srph查看已更新回答 – 2015-01-17 16:58:02
謝謝。但是,如果可能我在''''controller'''中使用'''modal''',我該如何訪問'''resolve'''? – srph 2015-01-17 18:34:16