![](/img/trans.png)
[英]How to call function in parent controller from the child controller in angularjs
[英]Child Controller loading before Parent controller api call in angularjs
我使用的是角度1.6,我分別擁有一個父狀態和子狀態以及各自的控制器。 在我的第一個登錄頁面中,將有兩個鏈接分別稱為父狀態和子狀態。 當我被稱為父州時,它工作正常。 但是從登錄頁面調用子狀態,控制台中會出現一些錯誤,例如'id'undefined 。 我在父控制器中發出一個Restangular API請求。 此響應后,我需要加載子控制器嗎? 但是,當我直接調用子狀態時,子控制器會在父控制器api調用完成之前加載。 如何解決呢?
看看這個矮人。
在父控制器中,保存來自API調用的承諾:
$scope.restPromise = Restangular.one('collections')
.get()
.then(function(data){
$state.go("parentstate.childstate");
$scope.myData = data;
$scope.params={
name:"my_name",
type:"generic",
data:data
};
});
在子控制器中,使用Promise等待API調用:
function ChildCtrl($scope) {
$scope.restPromise.then(function() {
console.log($scope.params);
$scope.params.id=5;
$scope.title = 'Child State';
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.