2
文字列ベースの列挙型(TypeScript 2.4以降でサポートされています)があります。文字列を対応する列挙型の値に変換する最も良い方法は何ですか(存在する場合は?)。存在しない場合は、値をデフォルトに設定しても問題ありません。文字列ベースの列挙型の変換Typescript 2.4+
export enum Theory {
RLJ = 'r + l = j',
WinterIsComing = 'winter is coming',
TyrionIsAarysSon = 'i buy it',
YoungGriffIsReal = 'doubtfull'
}
私は、次のことから始めましたが、これはうまくいきません。
function getTheory(theoryString: string): Theory {
let theory: Theory = Theory.RLJ;
if (theoryString in Theory) {
theory = theoryString as Theory;
}
return theory;
}
名の列挙値のマップを作成し、逆引き参照を行うことであろううまくいくかもしれないアプローチが、それは必要ではないはずと思われる(またはその活字体がより良いアプローチが組み込まれています) 。