Вот упрощенный пример: < /p>
< /p>
.
Код: Выделить всё
function test(elementName:string):T{
// irrelevant, just returning something
return document.createElement(elementName) as unknown as T;
}
const e1 = test('div'); // fine, e1's inferred type is HTMLElement
let e2: HTMLElement | undefined;
e2 = test('div'); // Type error
Во втором случае, тип кода retend wressed atement yates> yates> yates> code> yates hys> yates hise element> code> yates hyse> yte inse element> code> yates> code> yates hise element> yates hise element> yates> code> yates hise element> yates> codes htmlelement .
Почему поведение отличается? Почему общее значение по умолчанию не используется во втором случае? Ожидается?>
Подробнее здесь: https://stackoverflow.com/questions/795 ... rently-for
Мобильная версия