有没有办法使用Elm为页面构建组件,并在同一个Elm文件中编译两个组件,以及使用相同的代码加载两个相同的组件?
你知道我怎么做吗?
答案 0 :(得分:3)
elm-make允许您选择要一起编译的多个文件。
elm-make Header.elm Footer.elm Button.elm --output=app.js
<强> Header.elm 强>
port module Header exposing (..)
import Html
main =
Html.div [] [ Html.text "Header" ]
<强> Footer.elm 强>
port module Footer exposing (..)
import Html
main =
Html.div [] [ Html.text "Footer" ]
<强> Button.elm 强>
port module Button exposing (..)
import Html
main =
Html.div [] [ Html.button [] [ Html.text "Button" ] ]
<强>的index.html 强>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Elm Demo</title>
</head>
<body>
<div id="header"></div>
<div id="button"></div>
<div id="button2"></div>
<div id="footer"></div>
</body>
<script src="app.js"></script>
<script>
let header = Elm.Header.embed(document.getElementById("header"));
let footer = Elm.Footer.embed(document.getElementById("footer"));
let button = Elm.Button.embed(document.getElementById("button"));
let button2 = Elm.Button.embed(document.getElementById("button2"));
</script>
</html>