你好我得到这个错误:TypeError:用户不是一个函数

时间:2016-10-26 19:35:12

标签: javascript mongodb login

我收到此错误:TypeError: User is not a function

我想我在user.js

中犯了一个错误

有代码:

var mongoose = require('mongoose');
var bcrypt = require('bcryptjs');
/ User Schema
var UserSchema = mongoose.Schema({
    username: {
        type: String,
        index:true
    },
        password: {
        type: String
    },
        email: {
        type: String
    },
        name: {
        type: String
    }
});
var User = module.exports = mongoose.model('User', UserSchema);

module.exports.createUser = function(newUser, callback){
    bcrypt.genSalt(10, function(err, salt) {
        bcrypt.hash(newUser.password, salt, function(err, hash) {
            newUser.password = hash;
            newUser.save(callback);
        });
    });
}

module.exports.getUserByUsername = function(username, callback){
    var query = {username: username};
    User.findOne(query, callback);
}

module.exports.getUserById = function(id, callback){
    User.findById(id, callback);
}

module.exports.comparePassword = function(candidatePassword, hash, callback){
    bcrypt.compare(candidatePassword, hash, function(err, isMatch) {
        if(err) throw err;
        callback(null, isMatch);
    });
}

可以帮我解决这个问题

1 个答案:

答案 0 :(得分:0)

可能是转录错误,但行/ User Schema在语法上是不正确的;如果你的意思是评论,那么你需要//开头。