Node.js require не может найти пользовательский модуль
Вот структура проекта:
/
app.js
package.json
/node_modules
/app
config.json
/frontend
assets and html tpls
/modules
couch.js
raeume.js
users.js
Мне требуется config.json, raeume.js и users.js из app.js, и все работает нормально.
var config = require('./app/config');
var raeume = require('./app/modules/raeume');
var users = require('./app/modules/users');
Тогда я требую config.json и couch.js из user.js одинаково, и он ничего не найдет.
var couch = require('./app/modules/couch');
var config = require('./app/config');
Я думаю, он должен найти его. После некоторых исследований я увидел разнообразный ландшафт проблем, включая способ сборки node. Таким образом, я включил: я работаю над osx 10.8 с node v0.10.7.
Ответы
Ответ 1
Путь относится к каталогу, в котором вы require
загружаете файлы, поэтому должно быть что-то вроде:
var couch = require('./couch');
var config = require('../config');
Немного разъяснения, если вы пишете
var couch = require('./couch');
вы пытаетесь require
модуль кушетки, который находится в текущем каталоге, если вы пишете
var couch = require('couch');
вы пытаетесь выполнить require
модуль кушетки, установленный через npm
.
Ответ 2
Вот как вы это делаете:
var users = require('./../modules/users');
Ответ 3
Это должно быть:
var config = require(../../app/config)
var couch = require(./couch) (same directory)