Node.js Mongoose:引用子架构时出错

Node.js Mongoose:引用子架构时出错,node.js,mongodb,mongoose,models,mongoose-schema,Node.js,Mongodb,Mongoose,Models,Mongoose Schema,我的用户模型 'use strict'; const mongoose = require("mongoose"); const Schema = mongoose.Schema; var UserSchema = new mongoose.Schema({ id: String, username: String, firstName: String, lastName: String, initials: String, password

我的用户模型

'use strict';

const mongoose = require("mongoose");
const Schema = mongoose.Schema;


var UserSchema = new mongoose.Schema({
    id: String,
    username: String,
    firstName: String,
    lastName: String,
    initials: String,
    password: String,
    age: Number,
    dateJoined: Date,
    contactNo: String,
    email: String,
    about: String,

    groupId: Number,
    adminMode: Boolean,
    simpulPoints: Number,
})

//Define model for user
const User = {
    UserModel: mongoose.model("user", UserSchema),

}


module.exports = {
    UserSchema : UserSchema,
    User : User
}
我的事件模型

'use strict';

const mongoose = require("mongoose");
const Schema = mongoose.Schema;
var UserSchema = require("../models/user").UserSchema


var EventSchema = new mongoose.Schema();
EventSchema.add({
    id: String,
    title: String,
    description: String,
    organizerId: String, //Simpul admin user responsible for event
    startDate: Date, //MM-DD-YYYY HH:MM:SS:sssZ
    endDate: Date,
    group: String,
    locaction: String,
    googleMapsLink: String,
    hasPassed: Boolean,
    attendees: Number,

    registeredUsers: [UserSchema],

    groupId: Number,
    adminMode: Boolean,
    simpulAward: Number,
});

//Define model for evnt
var Event = {

    EventModel : mongoose.model("event", EventSchema),

}

module.exports = {
    Event : Event,
    EventSchema : EventSchema
}

我得到了臭名昭著的“throw new TypeError('架构数组路径的值无效'“registeredUsers”字段出错。我跟踪了多篇文章,发现了同一个问题,似乎找不到哪里出了问题。据我所知,我已适当地导出了架构。欢迎提供任何帮助/提示。

我最终将架构声明移到了一个单独的文件中,它似乎起到了作用。怀疑这一定是真的VSCode与users.js文件有一些文件权限问题

错误表明
UserSchema
null
未定义
,但从您显示的内容来看,我不知道如何处理。事实上,我无法重现该问题。@robertklep是的,这很奇怪。如果我将UserSchema包含在同一文件中,则定义有效没问题,因此导出过程中一定出了问题……您可以添加
console.log(UserSchema)吗
就在创建
EventSchema
之前,或者甚至在导入它之后。我这样做了,结果得到了
未定义的
。我还尝试了从同一个文件导出一个简单的文本,也得到了
未定义的
。在这种情况下,我会怀疑
models/user.js
文件。如果它是正确的文件,我会怀疑它t可能对
模块.exports
exports
执行了一些奇怪的操作。