找不到模块(自定义模块)
我有以下的文件夹结构。
我试图在其他文件中访问我的自定义模块( 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.js
path,但没有任何结果。
从同一目录加载自定义模块的正确方法是什么?
而且,如果有帮助,我在Windows上。
尝试使用:
var Constants = require('./Constants.js');
这将迫使Node找出你正在寻找一个相对path而不是node_modules
的包。
在旁边注意,Windowspath使用\
,所以考虑尝试它:
var Constants = require('.\Constants.js');