在 ELM 中显示返回数组的总数

Display total of returned array in ELM

我是 ELM 的新手,我正在扩展一个显示 markdown 文档演示文稿的基本应用程序。

我正在更改 this 故障应用程序的 main.elm 文档以显示可用页面总数。

如果我在收到响应时设置总计(在此块中)

RcvSlides resp ->
    case resp of
        Ok slides ->
            ( { model
                | slides = Just <| Array.fromList <| String.split "^^^^" slides
              }
            , Cmd.none
            )

        Err _ ->
            ( { model | slides = Nothing }
            , Cmd.none
            )

我总是得到0,如果我在NextSlide的情况下,我可以得到总数,但不是在第一页。

我该如何解决这个问题?

这是因为您在收到幻灯片时忘记设置totalHere a working version of your glitch:

RcvSlides resp ->
    case resp of
        Ok slides ->
            let
                nextSlides = Array.fromList <| String.split "^^^^" slides
                nextTotal = Array.length nextSlides
                nextModel = { model
                    | slides = Just <| nextSlides
                    , total = nextTotal
                    }
            in
            ( nextModel, Cmd.none )

        Err _ ->
            ( { model | slides = Nothing }
            , Cmd.none
            )