Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.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_Module - Fatal编程技术网

Javascript 如何在Node js中导入模块

Javascript 如何在Node js中导入模块,javascript,node.js,module,Javascript,Node.js,Module,我有两个js文件:MyBreakdown.js和MyService.js,我想将第二个导入第一个 在同一目录的不同子文件夹中,有以下内容: server/reports/plan/MyService.js 及 因此,我在MyBreakdown.js文件中尝试了两种方法导入MyService.js,但都不起作用: const季节性服务=require('server/reports/plan/myService') const季节性服务=require('../../../../myServi

我有两个js文件:MyBreakdown.jsMyService.js,我想将第二个导入第一个

在同一目录的不同子文件夹中,有以下内容:

server/reports/plan/MyService.js 

因此,我在MyBreakdown.js文件中尝试了两种方法导入MyService.js,但都不起作用:

  • const季节性服务=require('server/reports/plan/myService')
  • const季节性服务=require('../../../../myService')

  • 有人知道如何解决这个问题吗?谢谢

    节点中的模块导入是通过文件名完成的。例如:

    const seasonalityService = require('../../../../reports/plan/MyService');
    

    假设你在里面-serer/validation/rules/sections/MyBreakdown.js

    使用
    path.join
    形成正确的路径

    var path = require('path');
    
    var filepath = path.join(__dirname, '../../../../', '/reports/plan/MyService');
    
    console.log(filepath);
    
    var serviceFile = require(filepath);
    

    导入是通过文件名进行的。这两个文件都是由我创建的,而不是核心模块导入是通过文件名进行的,而扩展名可以忽略。我没有使用扩展名进行导入,因为我尝试了两种方式。您甚至可以使用绝对路径导入模块,如下所示('path_to_myproject/server/reports/plan/MyService');
    var path = require('path');
    
    var filepath = path.join(__dirname, '../../../../', '/reports/plan/MyService');
    
    console.log(filepath);
    
    var serviceFile = require(filepath);