Elm函数调用的翻转参数

问题描述 投票:8回答:2

我正在尝试修改the Elm example that shows a single spacer,以使其呈现多个不同颜色的间隔符:

import Color exposing (red, blue, yellow)
import Graphics.Element exposing (Element, color, spacer, flow, right)


colors = [ yellow, red, blue ]

presentColors : List Element
presentColors = List.map (color ??? (spacer 30 30)) colors

main : Element
main =
  flow right presentColors

但是您可以看到,函数color首先使用了color参数,因此我无法创建该函数的部分应用版本供List.map使用。

因此,如何将参数翻转到color,以便可以部分应用它?

elm
2个回答
10
投票

转到the Elm libraries page。按Standard Libraries。在搜索框中,键入flip,然后单击the function that comes up。这将为您提供有关

的文档

flip : (a -> b -> c) -> b -> a -> c将前两个参数的顺序翻转到函数。

您可以使用的方法

flip color (spacer 30 30)

与…相同

\c -> color c (spacer 30 30)

0
投票

0.19的榆木/核心中取出翻盖。您可以尝试:改为pilatch/flip包。

© www.soinside.com 2019 - 2024. All rights reserved.