No VSCode, se eu escrever este arquivo JS:
/** @type {number} */
let x = 10;
/** @type {string} */
let y = x;
nada é sublinhado em vermelho e a dica de ferramenta y
simplesmente fornece let y: string
. Não é isso que eu quero! Eu quero que o VSCode me dê um erro, como acontece em um arquivo TS:
let x: number = 10;
let y: string = x;
No arquivo acima, y
está sublinhado em vermelho e a dica ao passar o mouse sobre ele dáTS2332: Type 'number' is not assignable to type 'string'
Como posso conseguir isso? Devo ajustar uma configuração do VSCode? Devo usar um determinado recurso ESLint ou JSHint?
Existe uma configuração do VSCode para isso:
Javascript > Implicit project config > Check JS
opção foi marcadaExistem duas maneiras diferentes de lidar com isso, a primeira é aquela que @nino-filiu disse
Portanto, ele será ativado por padrão. Isso requer que o restante da equipe faça a mesma configuração do IDE (caso você não esteja trabalhando sozinho) e pode ser escapado no nível do arquivo adicionando
// @ts-nocheck
-o na parte superior de um arquivo específico.O segundo é apenas adicionado
// @ts-check
na parte superior do seu arquivo para que este arquivo específico seja verificado por padrão a partir de agora e não possa ser ignorado, a menos que você o altere// @ts-nocheck
ou exclua esta linha.