2015-10-01 4 views
1

У меня есть структура папок.Не удается найти модуль (настраиваемый модуль)

enter image description here

Я пытаюсь получить доступ к моему пользовательскому модулю (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... 

Я пробовал различные способы для определения пути в require как ../core_programming/Constants.js и ./core_programming/Constants.js, но ничего не работает.

Каков правильный способ загрузки пользовательских модулей из одного каталога.

И, я нахожусь на Windows, если это помогает.

ответ

6

Попробуйте использовать:

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

Это заставит узел, чтобы выяснить, вы ищете относительный путь, а не пакет в node_modules.

На стороне записки, окна пути использования \, поэтому пытаясь рассмотреть его, а также:

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

Wow спасибо, он работал с косой чертой '/'. – shashwat

Смежные вопросы