使用具有不同程序功能的多个 elm 包

Use multiple elm packages with distinct program functions

我正在尝试使用 Html.Styled 包和 Navigation 包创建一个 elm 应用程序。问题是它们都有自己的 program 功能,但据我所知,我的整个应用程序只使用一个程序。是否可以同时使用这两个包的 program 功能,或者是否有单独的方法来使用这两个包?

谢谢

Html.Styled.program 的来源表明它只是用 toUnstyled 包装了您的样式化 view 函数。您应该能够对 Navigation.program:

的输入执行相同的操作
import Html
import Html.Styled
import Navigation

main : Platform.Program Basics.Never model msg
main =
    Navigation.program urlParser
        { init = init
        , update = update
        , view = view >> Html.Styled.toUnstyled
        , subscriptions = subscriptions
        }


view : model -> Html.Styled.Html msg
view model = ...

我不相信有任何通用的解决方案可以使多个 program 实现在包之间协作,但这应该可以让您使用您引用的两个包。