У меня есть библиотека JavaScript с открытым исходным кодом, которая была создана. Недавно вкладчик помог изменить мою библиотеку для поддержки AMD. За последний месяц или два я реорганизовал свою библиотеку для повышения ремонтопригодности, модульности и удобочитаемости. По сути, я извлек фрагменты логики в автономные модули. Однако эти модули находятся внутри основного модуля.Использование RequireJS и AMD для распространения проекта с внутренними зависимостями
Посмотрев, как AMD что-то делает, я считаю, что было бы полезно, если бы я смог разбить эти внутренние модули на свои отдельные файлы. Я исхожу из фона Java, и с этой точки зрения эти отдельные модули кажутся мне классами, и я бы хотел их разделить. Это также поможет мне лучше управлять моими зависимостями, а также обеспечить надлежащую модульность. Я думаю, что в конечном итоге это сделает код намного лучше.
Я знаю, что RequireJS имеет функцию «оптимизировать», благодаря чему он объединяет все зависимости в один файл и минимизирует его.
Мой вопрос: будет ли этот миниатюрный файл совместим с AMD? То есть будет ли файл отображаться как модуль AMD? Зависимости, которые имеет сам проект, являются внутренними, и я не хочу раскрывать их отдельно. Тем не менее, я все равно хотел бы, чтобы разработчики могли импортировать мою библиотеку в качестве автономного модуля.
[Вот] (https://raw.github.com/vivin/regula/master/src/regula.js) источник в моей библиотеке. Я считаю, что в настоящее время AMD совместима. Я намерен разделить внутренние модули на отдельные файлы, которые сами по себе совместимы с AMD. Когда я оптимизирую с RequireJS, будет ли полученный миниатюрный файл (который содержит все остальные модули) совместимым с AMD? –
Если вы явно определяете его, да. Совместимость AMD. – Mohsen
потрясающий! Спасибо! –