Использование elm для разработки внешнего интерфейса + обслуживание динамических страниц elm через haskell

Я начал с elm вчера, и мне очень нравится его использовать. Без какого-либо опыта в разработке интерфейса я мог создать красивую веб-страницу всего за 30 строк кода, что потрясающе.

Теперь я очень хочу использовать это в примере из реальной жизни, я хочу создать небольшой блог. Но мне нужен способ общения с elm. Например, мне нужно запросить мою базу данных, и я получаю список записей блога [Blog], и теперь мне нужно передать их в elm.

Я не уверен, как бы я это сделал. Я искал популярные фреймворки haskell, такие как yesod snap и happstack, и первое, что я нашел, это http://hackage.haskell.org/package/snap-elm-0.1.1.2/docs/Snap-Elm.html

Но, похоже, он предназначен для обслуживания статических файлов elm, но мне нужно передать ему аргументы.

Можете ли вы порекомендовать мне какой-либо фреймворк, в котором уже есть поддержка elm для обслуживания динамических страниц elm?

А если нет, то как бы вы это сделали?

Моя идея заключалась в том, чтобы просто использовать elm в качестве скелета, а затем я генерирую обычный html-файл с помощью yesod snap или happstack и интегрирую этот файл в elm. Возможно ли это?

Что-то похожее на это

container 1000 1000 middle <| displayHtml "/pages/my_generated_html_page.html"

Редактировать:

Мое первое хакерское решение было таким

tPage = plainText "<script src=\"http://code.jquery.com/jquery-1.10.1.min.js\"></script>\n
<script> \n
$(function(){\n
$(\"#includedContent\).load(\"/home/maik/b.html\"); \n
});\n
</script> \n
<div id=\"includedContent\"></div>\n"

К сожалению, мне не разрешено использовать теги script в elm.


elm
person Maik Klein    schedule 07.12.2013    source источник
comment
Было бы интересно, если бы вы могли подключить Elm к шаблонам Angular.   -  person Joel    schedule 17.12.2013


Ответы (1)


Я рекомендую изучить исходный код elm-lang.org. По большей части это чистый Elm но есть страницы, которые сгенерированы на стороне сервера с помощью Haskell.

person thSoft    schedule 03.09.2015