gpt4 book ai didi

javascript - 快速路线悬挂异步等待

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

我正在将我的应用程序转换为使用 async/await 而不是后端发出的查询请求的回调。到目前为止一切进展顺利,但我遇到了一些障碍。我的页面卡在获取 get 路线上,而不是渲染 ejs 页面。服务器的控制台还显示,

(node:7036)
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): ReferenceError: qryFindLocalID is not defined (node:7036) .
[DEP0018] DeprecationWarning: Unhandled promise rejections are depreca ted. In the future, promise rejections that are not handled will terminate the Nod e.js process with a non-zero exit code.

如有任何帮助,我们将不胜感激。到目前为止的代码是,

router.get("/secure", async (req, res) => {
let user = req.session.passport.user;

try {
if (user.chkUserStatus) {
if (user.lWaterLabID == 0 || user.lWaterlabID == -9999) {
// in both cases sLabID is set to 0
// assign the correct value for sLabName
user.sLabName = user.lWaterLabID == 0 ? "Site Admin" : "Uber Admin";
} else {
let labName = await request.query(
"Some Query"
);

user.sLabName = labName[0].sLabName;
}
} else {
// Houston we've got a problem ...
// user.chkUserStatus is not truthy

req.flash("loginMessage", "User Status is invalid.");
res.redirect("/");
}

const qryFindLocalID = await request.query(
`Some Query`
);

if (user.lWaterLabID == 0) {
const listRecentReports = await request.query(Some Query);
} else {
const listRecentReports = await request.query(Some Query);
}
} catch (err) {
// ... error checks
}

res.render("secure/index", {
qryFindLocalID: qryFindLocalID,
user: user,
listRecentReports: listRecentReports
});
});

最佳答案

错误消息谈论了未处理的 promise ,但这只是包装了实际的错误,即: ReferenceError: qryFindLocalID is not defined .

那么你在哪里使用 qryFindLocalID ?啊,就在 res.render 的底部打电话。

res.render("secure/index", {
qryFindLocalID: qryFindLocalID,
user: user,
listRecentReports: listRecentReports
});

现在为什么是 qryFindLocalID这里未定义?您在上面的 try-catch block 中定义了它。但这是你的问题——你使用了 const ,所以qryFindLocalID只存在于try-catch中。除此之外,它不存在。

您可以使用var来解决这个问题在 try-catch 中( var 的作用域为函数),或定义 qryFindLocalID使用let位于 try-catch 上方。

关于javascript - 快速路线悬挂异步等待,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48529155/

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