使屏幕上的按钮信号像键盘信号一样
Make on-screen button signal act like Keyboard signals
核心Keyboard
信号,例如Keyboard.space
,当给定键被按下时是True
,否则是False
。我想从屏幕上的按钮发出相同的信号 属性。
我有一个按钮可以将 Bool
发送到邮箱,但它始终保持 True
除非我发送另一条消息,但我找不到一个干净的方法来做到这一点在我使用信号中的值之后,如果我决定稍后从同一个邮箱读取多个函数,那么不必担心会很好。
我认为 Signal.foldp
可能有解决此问题的方法,但如果是这样,我找不到类似的好例子。最方便的是,如果有一个带有签名 Signal Bool -> Signal Bool
的函数,它将信号转换为在每个 True
发送后发送 False
的信号。
您可以使用类似的东西:
Signal.dropRepeats <| Time.since Time.millisecond <| yourMailbox.signal
但建议使用 Elm 架构,只考虑 Actions 而不是降到这么低的级别。
核心Keyboard
信号,例如Keyboard.space
,当给定键被按下时是True
,否则是False
。我想从屏幕上的按钮发出相同的信号 属性。
我有一个按钮可以将 Bool
发送到邮箱,但它始终保持 True
除非我发送另一条消息,但我找不到一个干净的方法来做到这一点在我使用信号中的值之后,如果我决定稍后从同一个邮箱读取多个函数,那么不必担心会很好。
我认为 Signal.foldp
可能有解决此问题的方法,但如果是这样,我找不到类似的好例子。最方便的是,如果有一个带有签名 Signal Bool -> Signal Bool
的函数,它将信号转换为在每个 True
发送后发送 False
的信号。
您可以使用类似的东西:
Signal.dropRepeats <| Time.since Time.millisecond <| yourMailbox.signal
但建议使用 Elm 架构,只考虑 Actions 而不是降到这么低的级别。