这是我第一次在StackOverflow上发帖,所以请耐心等待。我一直试图在另一个JS文件中使用我的mongoose模式无济于事。 我的目录如下:
/Project
/models
model.js
/views
/admin
foo.ejs
/public
/js
foo.js
我的foo.ejs文件使用foo.js文件,该文件需要模型。但是,当我试图要求'它在JS文件中,我的浏览器发回以下错误:
"Uncaught ReferenceError: require is not defined".
然后我尝试使用' browserify'但也无法使其发挥作用,也不知道如何继续进行。 请提前帮助和感谢!
我的模型的代码是:
var mongoose = require("mongoose");
var categorySchema = new mongoose.Schema({
name: String,
series: [
{
type: mongoose.Schema.Types.ObjectId,
ref: "Series"
}
]
});
module.exports = mongoose.model("Category", categorySchema);
在我的JS文件中,我试图像这样要求它:
var Category = require("../../models/categoryMod");
答案 0 :(得分:0)
因为models.js文件正在导出架构,所以您不需要要求架构的名称,只需要文件的名称。
var Category = require('../../ models / model.js');
“。js”也是可选的,因为您的JavaScript文件会自动查找相同类型的文件。
如果您仍然遇到问题,我会确保您的节点版本是最新的,并验证您的软件包是否已正确安装。 (我假设你正在使用快递?)。