【发布时间】:2020-06-12 12:11:02
【问题描述】:
我有一个文件 signupResponse.js
const foundRegisterUser = function(err, foundUser){
if(!err){
console.log("Não tivemos erros")
if(!foundUser){
if(req.body.password == req.body.passwordConfirmation){
User.register({username: req.body.email}, req.body.password, function(err, user){
if (err){/
console.log(err);
} else {
console.log("Success")
res.render("welcome")
}
})
} else {
res.render("registerFailure",{msg0:MSG_INVALID_PASSWORD, msg1:"", msg2:""})
}
} else {
res.render("registerFailure",{msg0:MSG_INVALID_USER, msg1:"", msg2:"" })
}
} else {
res.render("registerFailure",{msg0:MSG_ERROR_REGISTER, msg1:"", msg2:""})
}
}
const signupresponse = (req, res) => {
Register.findOne({username: req.body.email}, function(err, foundUser){
if(!err){ /
if(!foundUser){
console.log("Usuário não encontrado")
res.render("registerFailure",{msg0:MSG_NOT_FOUND_REGISTER_0, msg1:MSG_NOT_FOUND_REGISTER_1, msg2:MSG_NOT_FOUND_REGISTER_2 })
}
else {
User.findOne({username: req.body.email},
foundRegisterUser(err, foundUser)
)
}
} else {
res.render("registerFailure",{msg0:MSG_ERROR_REGISTER, msg1:"", msg2:"" })
}
})
}
module.exports = signupresponse
我尝试导出到 app.js
const signupResponse = require("./funcoes/signupResponse")
app.post("/signup", signupResponse)
这个返回ReferenceError: res is not defined 但是当我将所有内容放入 signupResponse 并再次导出时,效果很好:
const signupresponse = (req, res) => {
Register.findOne({username: req.body.email}, function(err, foundUser){
if(!err){
if(!foundUser){
console.log("Usuário não encontrado")
res.render("registerFailure",{msg0:MSG_NOT_FOUND_REGISTER_0, msg1:MSG_NOT_FOUND_REGISTER_1, msg2:MSG_NOT_FOUND_REGISTER_2 })
}
else {
User.findOne({username: req.body.email}, function(err, foundUser) {
if(!err){
console.log("Não tivemos erros")
if(!foundUser){
if(req.body.password == req.body.passwordConfirmation){
User.register({username: req.body.email}, req.body.password, function(err, user){
if (err){/
console.log(err);
} else {
console.log("Success")
res.render("welcome")
}
})
} else {
res.render("registerFailure",{msg0:MSG_INVALID_PASSWORD, msg1:"", msg2:""})
}
} else {
res.render("registerFailure",{msg0:MSG_INVALID_USER, msg1:"", msg2:"" })
}
} else {
res.render("registerFailure",{msg0:MSG_ERROR_REGISTER, msg1:"", msg2:""})
}
})
}
} else {
res.render("registerFailure",{msg0:MSG_ERROR_REGISTER, msg1:"", msg2:"" })
}
})
}
module.exports = signupresponse
该应用运行良好且不返回任何错误。 当有很多功能要导出时,我不知道如何使用 module.exports。 如何导出此 signupResponse 并将另一个函数放入其中而不会出错? 谢谢!
【问题讨论】:
-
试试这个:
module.exports = { signupresponse }。它现在是一个带有 signupresponse 键的对象。 -
这个返回:错误:Route.post() 需要一个回调函数但是得到了一个[object Object]
标签: javascript node.js express module.exports