gpt4 book ai didi

javascript - javascript中如何完全执行一个函数而不跳转到另一个函数

转载 作者:行者123 更新时间:2023-12-03 01:12:00 25 4
gpt4 key购买 nike

我有使用首先执行的 ng-if 设置导航栏的函数。当到达 Promise.all 时,它会跳转到另一个函数,因此DOM 已经在没有检查 ng-if 值的情况下创建。我需要执行该函数而不完全跳转到另一个函数。如何获取它。我在这里尝试过:

$scope.GetNavigationMenu = function GetNavigationMenu() {
var modules = ["Dashboard", "Requirements", "Deviation Report", "Schedule", "Permission"];
Promise.all(modules.map(Module => httpService.get(serviceBase + rightsPermissionUrl, { Module })))
.then((list) => {
// do stuff with `list` array
$scope.navigationMenu = list;
});
}

最佳答案

您可以使您的函数成为异步函数并等待响应,如下所示:

$scope.GetNavigationMenu = async function GetNavigationMenu() {
var modules = ["Dashboard", "Requirements", "Deviation Report", "Schedule", "Permission"];
let list = await Promise.all(modules.map(Module => httpService.get(serviceBase + rightsPermissionUrl, { Module })));
// do stuff with `list` array
$scope.navigationMenu = list;

}

而且您不需要再次定义函数名称 =>$scope.GetNavigationMenu = 函数(){}将工作 MDN reference for async/await

关于javascript - javascript中如何完全执行一个函数而不跳转到另一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52178505/

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