Elm kendi başına tarihsel değerlerin takip etmez, ancak böyle sinyalin herhangi türde bir liste oluşturmak için foldp
kullanabilirsiniz: En son sinyal değeri o önüne edilir
history : Signal a -> Signal (List a)
history =
Signal.foldp (::) []
liste. , Eylem görmek yapabildin bu tam örnekte geçmiş tarihsel değerler varsayılan olarak tutulmaz neden ışık tutabilir o örnek Koşu http://elm-lang.org/try
import Graphics.Element exposing (show)
import Mouse
main =
Signal.map show <| history Mouse.x
history : Signal a -> Signal (List a)
history =
Signal.foldp (::) []
içine Kime: Hızlı bir şekilde hafıza kabartmak yapabilirsiniz. Olduğu söyleniyor, elm-reactor
s zaman-seyahat hata ayıklayıcı, tarihin etrafında tutar, ancak sadece hata ayıklama amaçları için. Bu normalde üretimde isteyeceğin bir şey değil.
Çok teşekkürler - 'Signal.map show <| Signal.map2 getHistory (Signal.constant 2) (makeHistory Mouse.isDown) 'örneğin mevcut ve mevcut Sinyal değerlerini korumak için. Yukarıdaki 'tarih' işlevinin '(: :)' operatörünü nasıl kullandığı oldukça şaşırtıcı. – category