在0.19中,将自定义HTML与elm reactor或其他开发服务器一起使用

在0.19中,将自定义HTML与elm reactor或其他开发服务器一起使用,elm,devserver,elm-reactor,Elm,Devserver,Elm Reactor,如图所示,如果此代码段包含在HTML文件中,则在Elm 0.18中可以使用自定义HTML文件运行Elm reactor: <script src="/_compile/src/Main.elm"></script> <script> runElmProgram(); </script> runElmProgram(); 然而,在0.19中,\u compile目录似乎不存在或不再提供服务。有没有其他方法可以达到同样的效果,最好是使用elm

如图所示,如果此代码段包含在HTML文件中,则在Elm 0.18中可以使用自定义HTML文件运行
Elm reactor

<script src="/_compile/src/Main.elm"></script>
<script>
  runElmProgram();
</script>

runElmProgram();
然而,在0.19中,
\u compile
目录似乎不存在或不再提供服务。有没有其他方法可以达到同样的效果,最好是使用
elm reactor
,以便能够利用现有的IDE支持等,但我对任何类型的“开发服务器”解决方案都感兴趣。

可以使用,需要更正式地调用。它默认为服务
index.html
,但可以使用命令行选项
-s,--start page[STARTPAGE]
配置为服务不同的html页面(感谢您的提示,@kaskelotti)

index.html
中启动elm程序所需的等效代码段是:

<script src="build/elm.js"></script>
<div id="elm"></div>
<script>
  var app = Elm.Main.init({
    node: document.getElementById('elm')
  });
</script>
HTML文件中的脚本路径必须与在命令行上作为
output
传递的脚本路径相同

elm reactor
不同,
elm live
不会在浏览器中显示编译器错误,而是将其打印到终端,并将继续为上次成功编译的输出提供服务


它还随机挂起和崩溃…

elm live有一个命令行选项
-s,--start page[STARTPAGE]
,允许使用index.html以外的文件
elm-live src/Main.elm -- --debug --output=build/elm.js