Open4

TypeScript畑で捕まえて

ピン留めされたアイテム
たふみたふみ

TypeScriptで捕まえられないやつらの集合です

たふみたふみ

switch true { case t instanceof Type: ... }

tType として扱われない気がする

たふみたふみ
type T = {
    [Type in 'hello' | 'world']: {
        [Key in string]: {
            [Key in string]: string
        }
    }
}

const t: T = {
    'hello': {},
    'world': {},
}

const text = "abcd"

const f = () => {
    if (!t['hello'][text]) {
        t['hello'][text] = {[text]: text}
    }

    t['hello']['abcd']['wow'] = 'ffefefe'
}

f()
t['hello']['abcd']['wow'] = 'ffefefe'

ここをabcdじゃなくてabcとかにしても動く (ランタイムエアー