Репозиторий, чтобы помочь вам понять менеджера эффекта.
elm-reactor
# http://127.0.0.1:8000/src/CommandExample.elm
# http://127.0.0.1:8000/src/SubscriptionExample.elmОбъяснение было подробно описано в комментариях кода ниже.
MyCounter.elmMyKeyboard.elm (завершение) ELM, как и Haskel, является чистым языком. Поэтому, если вы хотите создать библиотеку с побочными эффектами, это не должно быть нормальным способом. Объявление модуля effect module должно быть необычным таким образом. Это называется менеджером эффекта в сообществе ELM.
effect module MyRandom where { command = MyCmd , subscription = MySub }
exposing (
...Проблема в том, что как сделать менеджер эффекта, нигде не объясняется. Даже если вы спросите Elmlang Slack, большинство людей знают, как сделать управляющего эффектом, и нет хороших учебных пособий. В официальном документе мы можем увидеть и следовать менеджерам эффекта в уже сделанных библиотеках.
Поэтому я исправил Random.elm стандартной библиотеки и изменил простую форму, которую я мог видеть и понять с первого взгляда. Поскольку меня как можно больше объяснили, я надеюсь, что другие разработчики смогут увидеть и понять.
elm-practice в основном распределена в соответствии с условиями как лицензии MIT, так и лицензии Apache (версия 2.0). Смотрите Copyright для деталей.