gpt4 book ai didi

javascript - 如何在函数内返回 node.js 中导入的模块?

转载 作者:行者123 更新时间:2023-11-30 15:25:45 24 4
gpt4 key购买 nike

我正在创建一个 node.js 单页应用程序。如果用户通过身份验证,我想在主页中显示特定 View 。为此,我创建了一个函数来检查用户是否是授权的。它工作正常。

但是,当我想返回一个特定的 View 时,我遇到了一些问题。

我尝试了几种不同的方法,但我无法返回任何 View 。

观看次数

const notAuth = require('../view1')
const isAuth = require('../view2')

这是我的第一次尝试:

const home = function (ctx) {
if (ctx.auth) {
return isAuth
} else {
return notAuth
}
}
module.exports = home

然后,我尝试仅使用 module.exports:

module.exports = function home (ctx, next) {
if (ctx.auth) {
return isAuth
} else {
return notAuth
}
next()
}

最后,我尝试了这个:

const authenticated = function (ctx) {
if (ctx.auth) {
return isAuth
} else {
return notAuth
}
}

module.exports = function home (ctx, next) {
return authenticated(ctx)
next()
}

注意:

例如,如果我使用特定 View 所需的每个模块都可以正常工作:

module.exports = notAuth

如何在函数中返回特定的导入模块?

最佳答案

也许您需要实际将上下文传递给目标路由

const home = function (ctx, next) {
if (ctx.auth) {
return isAuth(ctx, next)
} else {
return notAuth(ctx, next)
}
}

关于javascript - 如何在函数内返回 node.js 中导入的模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43012484/

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