Переходя от потока Я часто уточняю mixed
типов в какой-то лучший формат. В машинописи я использую unknown
вместо смешанного. В результате получается следующий код для обработки ошибок:
type err = {
cause: unknown,
msg: string,
}
if (typeof err.cause === 'object' &&
err.cause !== null &&
'incomplete' in err.cause &&
Array.isArray(err.cause.incomplete)) {
something(err.cause.incomplete[0]);
//..something
}
Насколько я могу сказать, это должно работать? - Сначала я проверяю, является ли cause
допустимым объектом, а затем проверяю, находится ли внутри него incomplete
.
Однако в Array.isArray
:
Error:(26, 37) TS2339: Property 'incomplete' does not exist on type 'object'.
* появляется ошибка 1013 * Так что заставляет машинопись «забыть» предыдущее уточнение и как заставить его работать?