Как использовать пакеты npm с ReasonML?

Я очень опытен с ReactJS, и теперь я пытаюсь изучить ReasonML. Но одна вещь, которую я пытаюсь понять, - это как импортировать пакеты npm с помощью React/Reason.

Инструкции на веб-сайте для меня неясны (https://reasonml.github.io/guide/javascript/interop/).

Итак, если у меня есть проект React/Reason и вы хотите использовать пакет npm, как мне это сделать? Как импортировать его, используя Reason lang?

Ответ 1

Прежде всего, спасибо за отзыв! Я обязательно сделаю это улучшенным.

Теперь, чтобы иметь возможность использовать библиотеку javascript, опубликованную на npm, вам нужно либо найти, либо сделать некоторые привязки для нее, как мост между Reason/BuckleScript и JavaScript. В идеале привязки, которые вам нужны, уже были написаны (или сгенерированы) и опубликованы в npm, но в случае, если это не так, вам придется писать их самостоятельно.

Наиболее легкодоступные привязки перечислены в reasonml-community index и будут содержать инструкции по его использованию. Но если это не так, все, что вам нужно сделать, это запустить npm install --save <package-name>, как обычно, затем добавить имя пакета в массив bs-dependencies в bsconfig.json (см. Также Руководство BuckleScript). Обязательно запустите bsb -make-world, чтобы создать новую зависимость, тогда вы должны иметь возможность напрямую использовать модули, экспортируемые связями.

Если нет привязок, и вы хотите сделать свой собственный, все, что вам нужно сделать, это добавить пакет javascript как обычно, используя npm install --save <pacakge-name>, а затем просто начать писать внешние. Как это сделать описано в руководстве BuckleScript. Вы также можете найти мой FFI cheatsheet.

Наконец, вы можете присоединиться к нам на нашем Discord, где есть много дружелюбных людей, которые хотят помочь!