我在节点服务器项目下创建了一个名为models的文件夹 在其中包含一个名为PermissionModel.js的JavaScript文件
var express = require('express');
var mongoose = require('mongoose');
var Schema=mongoose.Schema,
Objectid=Schema.Objectid;
var permissionSchema=new mongoose.Schema({
docType:'string',
permission:'array'
});
var PermissionModel=mongoose.model('permission',permissionSchema);
module.exports=PermissionModel;
然后我尝试在server.js文件中导入它
var PermissionModel=require('models/PermissionModel');
尝试运行我的节点项目时发生此错误
Cannot find module 'models/PermissionModel'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/home/sankha/Documents/Projects/HealthApp/blu_kross_server/server.js:4:21)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:902:3
请帮我解决这个问题 非常感谢你!
答案 0 :(得分:3)
将您的需求行更改为:
var PermissionModel=require('./models/PermissionModel');
如果未将.
放在模型之前,Node将仅在node_modules文件夹中查找模块。
有关详细信息,请阅读节点文档,您也可以询问Google并找到this
答案 1 :(得分:0)
在models目录中创建一个文件 index.js 然后在index.js文件中导出PermissionModel.js
exports.PermissionModel = require(&#39; ./ PermissionModel&#39;);
server.js 内的导入整个目录,如下所示
var PermissionModel = require(&#39; ./ models&#39;);