Большая часть того, для чего я использую javascript, - это d3, а остальная часть моего знания javascript была самообучена, когда я смотрел на примеры, читал документы и т. Д. Суть в том, что мои "глубокие" знания javascript не так глубоки ... .
Поскольку я в основном работаю с d3, я написал много своих собственных функций и замыканий (как предложено Бостоком в На пути к многоразовым диаграммам ), которые основаны на d3.
Чтобы отследить весь код, который я написал для них в отдельных файлах, и использовать свою коллекцию, я попробовал несколько способов, таких как динамическое добавление тегов скрипта к заголовку документа, объединение файлов и т. Д.
В идеале, я должен сделать правильный модуль своего кода и собрать его вместе.
Итак, я отправился на этот путь и наткнулся на свертку, и этот урок от Ленгстрофа.
Я попытался следовать ему и заставить его работать с некоторыми незначительными изменениями (например, предполагается, что babel-core
уже установлен, и в настоящее время существует проблема с postcss
.
В любом случае, я сделал небольшое репо, чтобы продемонстрировать свой вариант использования ( проект репо ). Он имеет несколько модулей, которые включают вспомогательные функции, некоторые прототипы и некоторые замыкания.
В идеале все они должны быть экспортированы в замыкание / объект, как d3
(например, myClos
), где я мог бы затем вызвать любую из написанных мной функций.
К сожалению, я понятия не имею, как это сделать, и не нашел соответствующих примеров / руководств о том, как это сделать. Кроме того, при этом я должен был бы затем вызывать мои вспомогательные функции, такие как myClos.helper1()
.
В любом случае, я был бы очень признателен за вашу помощь. Идеальным завершением было бы, чтобы свернутый файл myclos.min.js
работал как d3
, где я включаю тег сценария, а затем myclos
находится в global-namespace
.
Заранее большое спасибо за помощь.