If statement 涉及信号的if-then语句
我一直在用Elm写一个简单的if-then语句,其中包含信号 如果条件本身是If statement 涉及信号的if-then语句,if-statement,frp,elm,If Statement,Frp,Elm,我一直在用Elm写一个简单的if-then语句,其中包含信号 如果条件本身是信号类型怎么办?我想更改Elm网站上的示例: 导入图形。元素公开(…) 导入鼠标 主:信号元件 主要= Signal.map show Mouse.isDown 根据鼠标是向上还是向下,它将显示True或False。如果我想让它说“向上”或“向下”呢?我的布尔函数可以说: <!-- language: haskell --> f : Bool -> String f x = if x then
信号
类型怎么办?我想更改Elm网站上的示例:
导入图形。元素公开(…)
导入鼠标
主:信号元件
主要=
Signal.map show Mouse.isDown
根据鼠标是向上还是向下,它将显示True或False。如果我想让它说“向上”或“向下”呢?我的布尔函数可以说:
<!-- language: haskell -->
f : Bool -> String
f x =
if x then "↑" else "↓"
错误#2:
这与
show::Bool->Element
基本相同。您没有将信号传递给该函数,而是将函数映射到信号上。它也适用于您的f
:
导入鼠标
导入图形。元素公开(元素,显示)
f:Bool->String
f x=如果x则为“其他”
向上向下:信号串
updown=Signal.map f Mouse.isDown
主:信号元件
main=Signal.map向上向下显示
或者简言之,使用组合:
main=Signal.map(show它与show::Bool->Element
基本相同。您不是将信号传递给该函数,而是将函数映射到信号上。它与f
的工作原理相同:
导入鼠标
导入图形。元素公开(元素,显示)
f:Bool->String
f x=如果x则为“其他”
向上向下:信号串
updown=Signal.map f Mouse.isDown
主:信号元件
main=Signal.map向上向下显示
或者简言之,使用组合:main=Signal.map(show它与show::Bool->Element
基本相同。您不是将信号传递给该函数,而是将函数映射到信号上。它与f
的工作原理相同:
导入鼠标
导入图形。元素公开(元素,显示)
f:Bool->String
f x=如果x则为“其他”
向上向下:信号串
updown=Signal.map f Mouse.isDown
主:信号元件
main=Signal.map向上向下显示
或者简言之,使用组合:main=Signal.map(show它与show::Bool->Element
基本相同。您不是将信号传递给该函数,而是将函数映射到信号上。它与f
的工作原理相同:
导入鼠标
导入图形。元素公开(元素,显示)
f:Bool->String
f x=如果x则为“其他”
向上向下:信号串
updown=Signal.map f Mouse.isDown
主:信号元件
main=Signal.map向上向下显示
或者简而言之,使用组合:main=Signal.map(显示
<!-- language: haskell -->
main : Signal Element
main =
Signal.map show ( f Mouse.isDown)
The 2nd argument to function `map` has an unexpected type.
10| Signal.map show ( f Mouse.isDown)
As I infer the type of values flowing through your program, I see a conflict
between these two types:
Signal a
String
The 1st argument to function `f` has an unexpected type.
10| Signal.map show ( f Mouse.isDown)
As I infer the type of values flowing through your program, I see a conflict
between these two types:
Bool
Signal Bool