node.js需要父文件夹
我有以下结构:
-- node_modules -- websites ---- common ------- config.js ---- testing ------- test.js
里面的configuration我有一些variables设置,这是使用module.export输出。
我试图从config.js运行node test.js
使用以下代码检索这些variables:
var configData = require('./common/config.js') var configData = require('../common/config.js')
他们都没有工作。 我能做些什么来从其他文件夹中检索数据?
var configData = require('./../common/config.js');
-
./
正在testing/
-
./../
是websites/
-
./../common/
是websites/common/
-
./../common/config.js
是websites/common/config.js
来自test.js:
const configData = require('../common/config');
您可以放心地忽略'.js'
。
正如文件所说:
文件模块
如果没有find确切的文件名,那么Node.js会尝试加载所需的文件名,扩展名为:.js,.json,最后是.node。
.js文件被解释为JavaScript文本文件 ,.json文件被parsing为JSON文本文件。 .node文件被解释为用dlopen加载的编译插件模块。
以“/”为前缀的必需模块是文件的绝对path。 例如,require('/ home / marco / foo.js')将加载文件/home/marco/foo.js。
以“./”为前缀的必需模块与调用require()的文件相关 。 也就是说,circle.js必须和require('./ circle')的foo.js在同一个目录下才能find它。
如果没有前导'/','./'或'../'来表示文件,模块必须是核心模块或从node_modules文件夹加载 。
如果给定的path不存在,require()会将其代码属性设置为“MODULE_NOT_FOUND”的错误。
有关require()
如何在这里工作的更多信息。