ExpertiDict

TypeScript · Essencial · Inglês · Técnico

type is not assignable

/taɪp ɪz nɑt əˈsaɪnəbəl/substantivo

Mensagem de erro mais comum do TypeScript (TS2322), exibida quando um valor de um tipo é usado onde se espera outro tipo incompatível.

Onde usar

Aparece ao atribuir string a number, passar um objeto com formato errado ou retornar um tipo diferente do declarado. Ler a mensagem de baixo para cima mostra a propriedade exata que diverge.

Em código

interface Ponto { x: number; y: number }
// const p: Ponto = { x: 1, y: '2' };
// erro TS2322: Type 'string' is not
// assignable to type 'number'.
const p: Ponto = { x: 1, y: 2 }; // ok

Exemplos

I'm getting type is not assignable on the return value.

Estou recebendo type is not assignable no valor de retorno.

Read to the last line, it says which property doesn't match.

Leia até a última linha, ela diz qual propriedade não bate.

Cuidado

A mensagem vem em camadas: a causa real costuma estar na última linha, no detalhe da propriedade, e não na primeira, que só descreve os tipos inteiros.

Sinônimos

TS2322

Veja também

Todos os termos de TypeScript