【发布时间】:2019-04-06 00:30:23
【问题描述】:
错误:
TypeError: 无法读取属性 'userID' of null
列出了我的UserDB.js 和profileController.js,不确定这个错误是关于什么的。当我从我的页面转换并转到 myItems(cart) 时,它会吐出这个错误。
router.get('/myItems', function(req, res, next){
res.locals.signin = req.session.signin;
var UserDB = require('../models/UserDB');
var Users = UserDB.getUser();
console.log(Users);
var LocalUser = Users.find(function (ele) {if (ele.userID === req.session.signin) {return ele;}});
if (SessionOn) {
var UserProfiles = UserDB.GetUserProfiles();
var LocalProfile = UserProfiles.find(function (ele) {if (ele.GetUserID() === LocalUser.userID) {return ele};});
}
res.render('myItems', {LocalUser: LocalUser, LocalProfile: LocalProfile, Session: res.locals.signin, SessionOn: SessionOn});
next()
});
-------
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost:27017/DB');
var Schema = mongoose.Schema;
var userDataSchema = new Schema({
userID: {type: String, required: true},
password: {type: String, required: true},
firstName: {type: String, required: true},
lastName: {type: String, required: true},
email: {type: String, required: true},
city: {type: String, required: true},
state: {type: String, required: true},
zipCode: {type: String, required: true}
},{collection: 'User'});
var UserData = mongoose.model('User', userDataSchema);
function getAllUsers(){
try{
return UserData.find({});
} catch(e){
console.log(e);
}
}
function getUser(user){
try{
return UserData.findOne({userID: user});
}catch(e){
console.log("error " + e);
}
}
module.exports.getUser = getUser;
module.exports.getAllUsers = getAllUsers;
【问题讨论】:
标签: javascript mongoose userid