Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript node.js需要来自父文件夹_Javascript_Node.js - Fatal编程技术网

Javascript node.js需要来自父文件夹

Javascript node.js需要来自父文件夹,javascript,node.js,Javascript,Node.js,我的结构如下: -- node_modules -- websites ---- common ------- config.js ---- testing ------- test.js 在配置中,我设置了一些变量,这些变量使用module.export导出 我试图在使用以下代码从config.js运行node test.js时检索这些变量: var configData = require('./common/config.js') var configData = require('..

我的结构如下:

-- node_modules
-- websites
---- common
------- config.js
---- testing
------- test.js
在配置中,我设置了一些变量,这些变量使用module.export导出

我试图在使用以下代码从config.js运行
node test.js
时检索这些变量:

var configData = require('./common/config.js')
var configData = require('../common/config.js')
它们都不起作用。如何从其他文件夹检索数据

var configData = require('./../common/config.js');
  • /
    测试/

  • /。/
    网站/

  • /。/common/
    网站/common/

  • /。/common/config.js
    网站/common/config.js

  • 从test.js:

    const configData = require('../common/config');
    
    您可以安全地省略
    '.js'

    比如说:

    文件模块 如果找不到确切的文件名,Node.js将尝试加载所需的文件名,并添加扩展名:.js, .json,最后是.node

    .js文件被解释为JavaScript文本文件和.json文件 被解析为JSON文本文件。节点文件被解释为已编译 加载了dlopen的插件模块

    前缀为“/”的必需模块是文件的绝对路径。 例如,require('/home/marco/foo.js')将在 /home/marco/foo.js

    前缀为“/”的必需模块与文件调用相关 require()。也就是说,circle.js必须与foo.js位于同一目录中 要求(“./圈”)找到它

    如果没有前导“/”、“./”或“../”来表示文件,则模块 必须是核心模块或从节点\模块文件夹加载

    如果给定的路径不存在,require()将抛出一个错误 其代码属性设置为“未找到模块”


    有关
    require()
    工作方式的详细信息。

    -找不到module@PHPLover现在检查!您是否不需要
    .js
    扩展?不需要,并且在模块加载期间从
    require()
    函数自动添加。明白。那么,这个答案与OP已经尝试过但不起作用的答案有何不同?为什么会这样呢?它仍然找不到从test.js调用的模块?删除文件名末尾的“.js”并不能回答有关在父目录中导入文件的原始问题。