У меня есть вопросы относительно использования $ 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