Oi, Lorenzo! Como vai?
Acredito que o que está acontecendo aí tem mais a ver com o VS Code do que com o seu código. Quando você liga o strictNullChecks, o terminal já mostra os erros, o que é ótimo. Mas pra eles aparecerem direto no editor com aquele sublinhado vermelho, o VS Code precisa estar reconhecendo certinho o TypeScript do projeto.
Tenta dar uma olhada se ele está usando a versão local do TypeScript. Dá pra ver isso abrindo a paleta de comandos (Ctrl+Shift+P) e procurando por "Select TypeScript Version". Se aparecer a opção "Use Workspace Version", clica nela.
Outra coisa que pode ajudar é reiniciar o servidor do TypeScript no próprio VS Code. Às vezes ele dá uma travada e para de mostrar os erros visuais. Também dá pra fazer isso com Ctrl+Shift+P, digitando "Restart TS server".
Ah, e confere se o tsconfig.json
tá certinho e se os arquivos .ts
que você está editando estão mesmo dentro da pasta que ele tá incluindo. Um include
mal configurado pode fazer o VS Code nem enxergar o que tá fora.
Veja esse exemplo aqui com strictNullChecks
ativado:
let nome: string | null = null;
console.log(nome.length); // erro: Object is possibly 'null'
Nesse caso, com a configuração funcionando, o VS Code já vai sublinhar essa linha.
Para saber mais:
Sugestão de extensões que pode te ajudar :
- TypeScript Hero - Facilita bastante a navegação e organização do código TypeScript, e ajuda a reforçar o suporte a erros e sugestões no editor. Funciona bem junto do TS Server.
- Error Lens - Essa aqui é ótima. Ela exibe os erros e warnings direto no código, como *overlay*, além de destacar melhor com cores. É útil pra deixar os erros visíveis sem precisar abrir o painel de problema
Espero ter ajudado! Bons estudos!
Sucesso ✨