部署为独立页面

13

在开发过程中,我一直使用elm-reactor来测试我的单页Elm应用程序。但对于生产部署,我希望将编译器的输出仅存储为静态文件放置在Web服务器上。

如何将Elm页面编译成一个独立的HTML + Javascript文件对?

2个回答

19
  1. 使用 elm-make 编译你的 Elm 应用程序为 elm.js(目标是定义了 main 的模块)。
  2. 创建你自己的 HTML 文件,其中包括该脚本和一个在 body 中执行 Elm.<Module-that-defines-main>.fullscreen() 的脚本。

示例

App.elm

module App where

import Text
import Signal
import Graphics.Element (Element)

main : Signal Element
main = "Hello World!" |> Text.asText |> Signal.constant

elm-make App.elm(创建elm.js

App.html

<!DOCTYPE html>
<html>
 <head>
  <script src="elm.js" type="text/javascript"></script>
 </head>
 <body>
  <script type="text/javascript">Elm.App.fullscreen()</script>
 </body>
</html>

虽然我使用 elm-brunch 进行编译(与 Phoenix 集成),但 Elm.fullscreen 的建议非常宝贵,救了我的一天。 - lab419

8

在 Github 项目页面上,这个问题的答案也非常有帮助:

最后,使用这个命令将文件编译成单独的、独立的 HTML 文件。

$ elm make start-test.elm --output index.html

1
这个回答中的链接已经失效。 - vlasits
1
这是正确的,我找不到作者把问题移动到哪里了 - 看起来已经被删除了,这很遗憾。 - Kaushik Ghose

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接