如何在Elm中暂停测量的时间?

如何在Elm中暂停测量的时间?,elm,pause,Elm,Pause,我正在尝试创建一个简单的网页,使用它可以在一定的时间内显示图像,比如一秒或一毫秒 在《榆树》中有没有“暂停”的方法?然后我可以显示,暂停,然后删除图像以达到效果 我注意到,每次机器时钟触发一个新的秒数时,but似乎都会更新,而我正在寻找一个可以在开始时间后暂停更新设定时间(例如一小部分秒)的东西。您可以创建一个新的Msg值,该值触发(图像的)url更改。 并通过计时器创建订阅。每个。 您可以在模型中添加一个标志,以指示是否继续更新图像(如果需要) 例如: subscriptions : Mode

我正在尝试创建一个简单的网页,使用它可以在一定的时间内显示图像,比如一秒或一毫秒

在《榆树》中有没有“暂停”的方法?然后我可以显示,暂停,然后删除图像以达到效果


我注意到,每次机器时钟触发一个新的秒数时,but似乎都会更新,而我正在寻找一个可以在开始时间后暂停更新设定时间(例如一小部分秒)的东西。

您可以创建一个新的
Msg
值,该值触发(图像的)url更改。 并通过
计时器创建订阅。每个
。
您可以在模型中添加一个标志,以指示是否继续更新图像(如果需要)

例如:

subscriptions : Model -> Sub Msg
subscriptions model =
    if model.keepUpdating then
        Time.every (3 * second) (\x -> UpdateImage)
    else
        Sub.none


update : Msg -> Model -> ( Model, Cmd Msg )
update msg model =
    case msg of
        UpdateImage ->
            ( { model | image_url = "http://to_new_image/..." }, Cmd.none )
这个包提供了一个很好的超时抽象。要创建在一秒钟内触发的
Cmd RemoveImage
,只需在1秒RemoveImage
后执行