以下の内容はhttps://uga-box.hatenablog.com/entry/2022/04/28/000000より取得しました。


【TypeScript】テンプレートリテラル型

下の本を読んでテンプレートリテラル型を知らなかったのでメモ

あったらいいのにと思っていた構文だが、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にしていたので、このテンプレートリテラル型でより安全にできそう




以上の内容はhttps://uga-box.hatenablog.com/entry/2022/04/28/000000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14