gpt4 book ai didi

javascript - 如何使用 Angular UI Router 解析所有状态的数据?

转载 作者:搜寻专家 更新时间:2023-11-01 05:30:58 24 4
gpt4 key购买 nike

在我的应用程序中,每条路线都要求在呈现之前从我的 API 中检索帐户数据。为此,我使用 ngRoute 执行以下操作:

$rootScope.$on('$routeChangeStart', function(event, next, current) {
next.$$route.resolve = next.$$route.resolve || {};

next.$$route.resolve.authorizationCheck = function() {
return deferredAccountData.promise;
};
});

因此,在每条路由之前,返回 promise 的 authorizationCheck 解析必须解析。这非常有效。

我现在改用 UI Router,我需要保留此功能。有哪些选择可以实现这一目标?

我能想到的一个选择是使用嵌套状态并让所有路由继承父状态的解析。尽管如果可能的话我宁愿不要嵌套。还有其他选择吗?

最佳答案

您可以在父状态中解析多个 ui-router 状态所需的数据。子状态也将拥有此数据。

$stateProvider
.state('app', {
url: "/",
resolve: {
authorizationCheck: function() {
// Do your API checks or whatever
}
}
})
.state('app.somepage', {
url: "/somepage",
templateUrl: "partials/some.page.html",
controller: function($scope) {

}
})

虽然在服务中进行授权检查会更有意义,因此您可能希望在主 Controller 中注入(inject)授权服务,并在其上注入(inject)基本状态和可用性。

关于javascript - 如何使用 Angular UI Router 解析所有状态的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28618191/

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