我有一些關於使用$ q.when的問題。下面是我的代碼:
下面是我的代碼:
resolve: {
get: ['$q','testService','$stateParams',
($q,tes,$stateParams) => {
// I am doing a check here to see if the qs
// array has been populated. If it has then
// I want to return a resolve. If not then
// I want to return getQuestions()
$q.when($stateParams.qs);
// getQuestions() will return a promise
}]
},
能有人給我我如何能做到這一點一些建議嗎?我有一個想法,但我不確定這是否應該這樣做。特別是我不確定是否需要包含return
,並且還不確定在第一個$ when的解析部分中是否需要第二個$。
resolve: {
get: ['$q','testService','$stateParams',
($q,tes,$stateParams) => {
return $q.when($stateParams.qs)
.then(() => {
return $q.when("success");
},
() => {
return getQuestions();
}
}]
},
謝謝你的迴應,但我仍然很困惑。你能告訴我一個例子,你如何認爲我可以實現在問題中使用代碼返回承諾,這樣我可以更好地理解。 – Alan2
特別是我試圖使用:when(value,[successCallback],[errorCallback],[progressCallback]);根據我是否已經擁有數據來調用getQuestions。在這個例子中,我實際上沒有控制器,因爲它是ui-router解析方法。 – Alan2
無論如何編輯我的答案 – svarog