我想在榆树的记录中硬编码日期.记录签名是
type alias Record = { .., startDate : Date, .. }
在我的代码我正在做
record = { .., startDate = Date.fromString "2011/1/1", .. }
问题是Record类型需要Date类型但Date.fromString签名是
String -> Result.Result String Date.Date
如何创建要在记录类型上使用的日期?
你得到的是Result
因为有可能将字符串解析为日期失败.您可以通过以下两种方式之一处理它.
如果你只想说"我知道这个字符串将是有效的日期,我不担心我可能搞砸了"然后你可以提供一个默认日期
Date.fromString "2011/1/1" |> Result.withDefault (Date.fromTime 0)
Date
如果解析失败,这将为您留下一个但默认为unix时期.
想想你会想,如果解析到发生什么是失败,并处理它使用的日期在那里.防爆.如果您将其显示为字符串,则可以显示日期或解析失败显示"TBA"
.
注意:您可能已经注意到Date.fromTime
只返回a Date
而不是Result
(因为Int
可以始终将其解析为a Date
).如果您不介意将日期转换为unix时间戳,则可以对时间戳进行硬编码并使用它而无需处理Result
s