Тип T1 корректно выдает ошибку, потому что отсутствует поле E1.Bb
а вот тип T2 такой ошибки не выдает. Посмотрите, какой тип выводится для переменной b: Record<..> | Record<..> - че за бред?)
Либо я чего то не знаю
https://www.typescriptlang.org/play?#code/KYOwrgtgBAogjFA3gKClAggQygXigck03wBpUoAhAI1wKqtOQF9lkAXATwAdgoAVOAB4+UYAA82oACYBnKDLYAnAJYgA5gD5aAJWABjAPaKpwklHAQqwRQG0AuhtaGQCqJgBc-IfC14UaG3gAOiw7Txs4OzImAG5Wdm5ePgAmYVEJaTkFFXUoAB9zYAA3a1oQYutffnTJEFlCksUoAH4G0s9dQ2NTc0grWwc45GdXKk8UwR9afyhAuBDMMNnI5higA
а зачем там string | never?
вообще там void изначально был вместо never. просто экспериментировал. Просто цель сделать необязательность.
> Просто цель сделать необязательность. Partial<Record<E1, number[]>> ?
Обсуждают сегодня