找不到模块(自定义模块)

我有以下的文件夹结构。

在这里输入图像描述

我试图在其他文件中访问我的自定义模块( core_programming/Constants.js )。

我可以使用下面的代码在routes/index.js访问它,没有任何问题。

 var Constants = require('../core_programming/Constants.js'); 

但是,当我尝试使用以下语句在core_programming/User.js访问它时出现错误。

 var Constants = require('Constants.js'); 

它给出了以下错误:

 module.js:338 throw err; ^ Error: Cannot find module 'Constants.js' at Function.Module._resolveFilename (module.js:336:15) at Function.Module._load (module.js:286:25) at Module.require (module.js:365:17) at require (module.js:384:17) at Object.<anonymous> (D:\nodeJsProjects\AutomateBuild\core_programming\User.js:3:18) at Module._compile (module.js:434:26) at Object.Module._extensions..js (module.js:452:10) at Module.load (module.js:355:32) at Function.Module._load (module.js:310:12) at Module.require (module.js:365:17) at require (module.js:384:17) 1 Oct 11:56:35 - [nodemon] app crashed - waiting for file changes before starting... 

我已经尝试了不同的方式来定义像../core_programming/Constants.js./core_programming/Constants.js这样的../core_programming/Constants.jspath,但没有任何结果。

从同一目录加载自定义模块的正确方法是什么?

而且,如果有帮助,我在Windows上。

尝试使用:

 var Constants = require('./Constants.js'); 

这将迫使Node找出你正在寻找一个相对path而不是node_modules的包。

在旁边注意,Windowspath使用\ ,所以考虑尝试它:

 var Constants = require('.\Constants.js');