2011-02-03 3 views
3

タイトルが付いた複数のページがあり、これらのタイトルをある種の列挙型で文字列定数として定義できるようにしたい。私はあなたがモジュールに入れなければならないでしょうと思います定数をグループ化するためのF#構文

if title = pageTitles.SALES then 
    //Goto sales 
+0

は行うには正しいことのように思えます。あなたの質問は何ですか?あなたはそれを行う他の方法があるかどうか尋ねていますか? – dexter

答えて

3

:この

pageTitles = 
| HOME = "Home" 
| SALES = "Sales" 
| MARKETING = "Marketing" 
| LOGOUT = "Logout" 

と同じようにそれを使うような何か。例:

module pageTitles = 
    [<Literal>] 
    let HOME = "Home" 
    ... 
+4

'Literal'属性を使うと、パターンマッチングの定数をパターンとして使用できるようになります。 (そうでなければ、それは必要ありません)。私は 'PascalCase'を使うことをお勧めします。間違いなくモジュール名と定数の可能性もあります。 –

4

はダニエル/トマスのアドバイス組み合わせる:あなたは何をしているか

module PageTitles = 
    [<Literal>] 
    let HOME = "Home" 
    [<Literal>] 
    let SALES = "Sales" 
... 
open PageTitles 
... 
match title with 
| HOME -> // goto home 
| SALES -> // goto sales 
関連する問題