具有默认值的选项
Option to value with default value
在这个 的回答的帮助下,我需要有关如何在以下情况下从选项类型中检索值的特定语法方面的帮助。
type Query = {
q : string
pageSize : int option
}
let search (query : Query) =
let url = sprintf "foo.com?q=%spageSize=%i" query.q (query.pageSize |> 10 |< query.pageSize) // ???
(query.pageSize |> 10 |< query.pageSize)
的语法帮助
您链接的答案非常清楚地说明了语法:
input |> defaultArg <| ""
在您的例子中,输入是 query.pageSize
,默认值是 10
而不是空字符串。所以:
query.pageSize |> defaultArg <| 10
Option.defaultValue
是你的朋友:
type Query = {
q : string
pageSize : int option
}
let q = {q = "foo"; pageSize = None}
let p = q.pageSize |> Option.defaultValue 10
在这个
type Query = {
q : string
pageSize : int option
}
let search (query : Query) =
let url = sprintf "foo.com?q=%spageSize=%i" query.q (query.pageSize |> 10 |< query.pageSize) // ???
(query.pageSize |> 10 |< query.pageSize)
您链接的答案非常清楚地说明了语法:
input |> defaultArg <| ""
在您的例子中,输入是 query.pageSize
,默认值是 10
而不是空字符串。所以:
query.pageSize |> defaultArg <| 10
Option.defaultValue
是你的朋友:
type Query = {
q : string
pageSize : int option
}
let q = {q = "foo"; pageSize = None}
let p = q.pageSize |> Option.defaultValue 10