【问题标题】:Cannot find module 'models/PermissionModel' error when I try to require my javascript file当我尝试要求我的 javascript 文件时,找不到模块“models/PermissionModel”错误
【发布时间】:2016-01-19 10:11:57
【问题描述】:

我在我的节点服务器项目下创建了一个名为 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

请帮我解决这个问题 非常感谢!!

【问题讨论】:

  • 相对于 server.js,PermissionModel.js 位于文件系统的什么位置?
  • 尝试var PermissionModel=require('/models/PermissionModel'); 或检查您在服务器上的文件位置
  • 我试过但还不行,
  • @SankaSumadura 那么请看yeya提供的答案。

标签: javascript node.js mongoose


【解决方案1】:

将您的需求行更改为:

var PermissionModel=require('./models/PermissionModel');

如果您不将. 放在模型之前,Node 将仅在 node_modules 文件夹中查找模块。

更多信息请阅读node的文档,你也可以去google找到this

【讨论】:

    【解决方案2】:

    在你的模型目录中创建一个文件 index.js 然后在 index.js 文件中导出 PermissionModel.js

    exports.PermissionModel = require('./PermissionModel');
    

    在您的 server.js 中导入整个目录,如下所示

    var PermissionModel=require('./models');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-21
      • 2018-02-12
      • 2020-04-14
      • 2021-12-27
      • 2020-03-08
      • 2019-02-10
      相关资源
      最近更新 更多