Недискриминационное объединение Typescript допускает свойства с обеих сторон объединения - PullRequest
0 голосов
/ 26 июня 2019

Учитывая следующее:


type TestUnion = { a: true } | { b: true };
const shouldFail: TestUnion = { a: true, b: true };

Я ожидаю, что shouldFail будет иметь ошибку компиляции, поскольку она не соответствует ни одной из сторон объединения.Тем не менее, это компилируется просто отлично.(Typescript 3.5.1)

Не понимаю ли я что-то о том, как работают типы объединения?

...