Avatar ·

Erro TypeScript: Type 'string | undefined' is not assignable to type 'string' — como corrigir?

Olá! Acabei de começar a estudar TypeScript e me deparei com um erro que não consigo entender. Tenho uma função que recebe uma string e retorna seu comprimento. Mas quando tento passar para ela um valor de um objeto obtido do DOM, o TypeScript gera um erro: ``` Type 'string | undefined' is not assignable to type 'string'. Type 'undefined' is not assignable to type 'string'. ``` Aqui está meu código: ```typescript function getLength(text: string): number { return text.length; } const inputElement = document.getElementById('myInput') as HTMLInputElement; const value = inputElement.value; // value tem tipo string | undefined const length = getLength(value); // Erro aqui! ``` Eu entendo que `value` pode ser `undefined`, mas na realidade o campo de input está sempre na página. Por que o TypeScript reclama e como lidar corretamente com essa situação? Por favor, me explique como para um iniciante. <<>>

Problema: TypeScript protege contra erros potenciais

O erro