如何在 Elm 的同一页面中多次加载带有标志的组件?

How to load a component with flags multiple times in the same page in Elm?

有没有办法用 Elm 为页面构建组件并在同一个 Elm 文件中编译两个组件以及使用相同的代码加载两次相同的组件?

你知道我该怎么做吗?

elm-make 让您 select 多个文件一起编译。

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>