下の本を読んでテンプレートリテラル型を知らなかったのでメモ
あったらいいのにと思っていた構文だが、v4.1(約2年前)からあったみたいで、うまく探せてないだけだった
本を読んで存在をしれてよかった
JavaScriptと同様にHello, ${string}!のような書き方でテンプレート化できるが、${}の中は型名がはいる
本を読んで面白い使い方だと思ったのは、戻り値をテンプレートリテラル型にする逆の関数をつくる話
つまりsliceした後の文字列を型にした戻り値をつくる関数
function fromKey<T extends string>(key: `user: ${T}`): T { return key.slice(5) as T; } const user = fromKey("user:test"); // userは"test"型になる
自分のプロジェクトで、あるIDをサービス名:親番号:子番号:言語というようにプロパティを駆使して整形している
いままで、stringにしていたので、このテンプレートリテラル型でより安全にできそう