Здравствуйте, с RequireJS. Я могу установить базовый путь следующим образом: base : './app/'
, поэтому, когда я нахожусь в ./app/foo/bar/
, например, и у меня есть скрипт, в котором я использую require('foo');
RequireJS, тогда будет искать ./app/foo.js
, а не вПапка node_module
или ./app/foo/bar/foo.js
это удобно, когда у вас есть некая структура, в которой вам, как разработчику, было бы намного удобнее видеть зависимости вместо того, чтобы иметь ../../foo.js
.Я мог бы иметь ./app/foo.js
и ./app/foo/foo.js
и ./app/foo/bar/foo.js
, было бы намного чище иметь:
require('foo');
require('foo/foo');
require('foo/bar/foo');
, а не:
require('../../foo');
require('../foo');
require('./foo');
Теперь вы можете сказать, почему бы и нетизмените имя и не используйте foo везде, допустим, что мы не можем по какой-либо причине…
Еще один недостаток, который я вижу в методе require узла по сравнению с RequireJS, - это возможность установки сопоставления пути, если я имеюкаталог с именем ./app/super-sized-directory-name/
в RequireJS, который я мог бы просто сделать 'big-dir' : 'super-sized-directory-name'
, а затем я мог бы просто использовать require('./app/big-dir/foo')
с методом require Node.js, насколько я знаю, это невозможно…