gpt4 book ai didi

javascript - 我如何处理未兑现的 promise 的 Angular-UI-Router 解析?

转载 作者:行者123 更新时间:2023-11-27 23:59:53 25 4
gpt4 key购买 nike

假设我设置了一个 Angular ui 路由器路由。当我更改为该状态时,我告诉 Angular 我希望它首先解析工厂调用,然后加载 View 。但是当该 api 调用为空时会发生什么?我想通知用户没有找到结果并保持原来的状态。不转换到没有数据可显示的另一个 View 。实现这一目标的最佳方法是什么?

路线(当我知道会有返回时,到目前为止,它按预期工作)

'use strict';

angular.module('testApp')
.config(function ($stateProvider) {
$stateProvider
.state('spinnerTest', {
url: '/spinner_test',
templateUrl: 'app/spinnerTest/spinnerTest.html',
controller: 'SpinnerTestCtrl',
resolve: {

names: function(NamesService){

//What happens if I return an empty array []?
//How do I return to the previous state?
NamesService.getNames();
}
}
});
});

最佳答案

如果数组为空,您可以简单地拒绝解析中的 promise :

resolve: {
names: function(NamesService) {
return NamesService.getNames().then(function(names) {
return names.length == 0 ? $q.reject('no names') : names;
});
}
}

关于javascript - 我如何处理未兑现的 promise 的 Angular-UI-Router 解析?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31905075/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com