type alias Employee =
{ role : Role, name : String }
type Role
= Engineer
| Manager
| Sales
| Accounting
| Hr
generateSample =
Role.all |> List.map createModelWithType
Run Code Online (Sandbox Code Playgroud)
我需要完成Role.all,即使Role在这种情况下也无法访问.什么是实现/替代表达方式的最佳方式.
没有自动方法列出类型的所有构造函数.你可以建立一个这样的列表:
allRoles : List Role
allRoles =
[ Engineer
, Manager
, Sales
, Accounting
, Hr
]
Run Code Online (Sandbox Code Playgroud)
在Elm中,没有类似于其他语言的简单枚举的概念.类型构造函数也可以有参数,这可能有助于理解为什么没有内置的方法来枚举构造函数列表.