我有一个要呈现给用户的颜色类型联合。是否可以遍历所有类型的并集值?
type Color = Red | Blue | Green | Black
colorToStirng color =
case color of
Red -> "red"
Blue -> "blue"
Green -> "green"
Black -> "black"
colorList =
ul
[]
List.map colorListItem Color -- <- this is the missing puzzle
colorListItem color =
li [class "color-" ++ (colorToString color) ] [ text (colorToString color) ]
抱歉不行。这不可能。
对于像您的Color
类型这样具有有限数量值的简单类型,似乎编译器应该能够生成这样的列表。就编译器而言,您的类型与类似
type Thing = Thing String
要遍历type的所有值,Thing
则需要遍历type的所有值String
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句