这是我尚未遇到的Node.js和Mongoose最奇怪,最令人沮丧的问题。我根本不知道是什么原因导致了这种情况的发生,但是我的Model函数都没有执行。例如,我有一个模型:
const UserSchema = new Schema({
email : {...},
password: {...},
etc...
module.exports = UserSchema
所有模式都在各自的文件中,然后在models / index.js中制成模型:
const UserSchema = require('./UserModel')
const User = mongoose.model('users', UserSchema)
module.exports.User = User
有到/login
和/register
的路由,这些路由以前运行良好,但现在看来像findOne
这样的实际猫鼬调用从未真正被调用过,并且彻底让我难过。
这是我的意思的示例:
// This is inside an AuthController, which is called by the Express router
console.log('a')
UserModel.findOne({'email':email}, (error, result) => {
console.log('b')
if (error) callback(error)
else callback(null,result)
})
现在,我总是在控制台中看到“ a”,但从未收到错误或结果。例如,“ b”将永远不会打印到控制台。
我缺少一些简单的东西吗?为什么它似乎突然破灭了?为什么不调用这些功能?