【问题标题】:node.js local modules: module not found error in subfoldernode.js 本地模块:子文件夹中未找到模块错误
【发布时间】:2018-02-28 17:18:21
【问题描述】:

这是我的应用程序的文件夹结构

我将 app_modules/barapp_modules/foo 称为本地模块

package.json 根文件夹

 "dependencies": {
    "body-parser": "~1.18.2",
    "cookie-parser": "~1.4.3",
    "debug": "~2.6.9",
    "express": "~4.15.5",
    "jade": "~1.11.0",
    "morgan": "~1.9.0",
    "serve-favicon": "~2.4.5",
    "foo": "file:app_modules/foo",
    "bar": "file:app_modules/bar",
    "hello": "file:hello"
  }

当我需要模块时

var fooModule = require('app_modules/foo');我得到模块未找到错误

package.json 用于foo 模块

{
  "name": "foo",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC"
}

【问题讨论】:

  • foobar 文件夹是否包含index.js 文件或package.json
  • 它包含两个文件

标签: javascript node.js express npm


【解决方案1】:

默认情况下,requirenode_modules 文件夹中查找模块。要包含来自自定义位置的模块,您需要在路径前加上 ./../ 前缀,具体取决于模块来自您需要它的文件的级别。

所以,如果你想从app.js 中要求app_modules/foo,你必须这样做:

var fooModule = require('./app_modules/foo');

【讨论】:

  • 但我已经指出在node_modules 文件夹中检查我的package.json
  • 试试require('foo')
猜你喜欢
  • 2018-08-05
  • 1970-01-01
  • 1970-01-01
  • 2021-12-24
  • 2020-06-14
  • 1970-01-01
  • 2018-08-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多