Показать сообщение отдельно
  #1 (permalink)  
Старый 28.08.2015, 21:44
Аватар для FINoM
Новичок
Отправить личное сообщение для FINoM Посмотреть профиль Найти все сообщения от FINoM
 
Регистрация: 05.09.2010
Сообщений: 2,298

Как с помощью AMD (require) запросить модуль с относительным адресом?
Скажем. у меня есть некая библиотека, которая тягается из проекта в проект. Периодически меняется положение библиотеки относительно главного вызова require. Проблема в том, что модули, запрашиваемые другими модулями библиотеки используют относительный путь , относительно файла (сорри за тавтологию), вызвавшего require.

Попробую прояснить на примере:
Код:
/index.js - файл, который запрашивает библиотеку
/my-lib/main.js - файл библиотеки
/my-lib/submodule.js - некий вспомогательный файл запрашиваемый библиотекой

В index.js я вызываю:
require(['my-lib/main'], function() {...});


В my-lib/main.js вызываю:
define(['./submodule'], function() {...});


Но requirejs пытается найти submodule в папке, в которой лежит index.js, выдавая, конечно же, 404.

Вновь костылить, жонглируя с paths (что я успешно делаю около года из-за отсутствия относительных путей) не допустимо в данном случае. Как эту проблему решить?
__________________
"Matreshka is fucking awesome" © чувак с Reddit
Matreshka.js - Три возможности
Ответить с цитированием