我有幾個帶標題的頁面,我希望能夠在某種枚舉類型中將這些標題定義爲字符串常量。這樣用於分組常量的F#結構
pageTitles =
| HOME = "Home"
| SALES = "Sales"
| MARKETING = "Marketing"
| LOGOUT = "Logout"
,然後一些使用它像:
if title = pageTitles.SALES then
//Goto sales
我有幾個帶標題的頁面,我希望能夠在某種枚舉類型中將這些標題定義爲字符串常量。這樣用於分組常量的F#結構
pageTitles =
| HOME = "Home"
| SALES = "Sales"
| MARKETING = "Marketing"
| LOGOUT = "Logout"
,然後一些使用它像:
if title = pageTitles.SALES then
//Goto sales
我認爲你必須把它們放在一個模塊中。例如:
module pageTitles =
[<Literal>]
let HOME = "Home"
...
值得一提的是,`Literal`屬性可以在模式匹配中使用常量。 (否則你就不需要它了。)我也推薦使用`PascalCase` - 肯定用於模塊名稱,也可能用於常量。 – 2011-02-03 21:13:27
組合丹尼爾/托馬斯建議:
module PageTitles =
[<Literal>]
let HOME = "Home"
[<Literal>]
let SALES = "Sales"
...
open PageTitles
...
match title with
| HOME -> // goto home
| SALES -> // goto sales
你在做什麼似乎是做正確的事。你的問題到底是什麼?你問是否有其他的方法? – dexter 2011-02-03 21:00:03