Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Extensão .js no import da classe Negociacao em app.ts

Olá. Observei que ao importar a classe Negociacao.ts no app.ts, foi necessário colocar a extensão JS (import {Negociacao} from './models/negociacao.JS'). Se assim não for feito, após a compilação e ao rodar o servidor, a classe negociacao.js que está dentro do diretório /js/models não é encontrada pelo servidor, pois o import em app.js fica sem extensão. Como no Typescript aparentemente não é preciso colocar a extensão TS nos imports dos arquivos, achei estranho no projeto até o módulo 2, ter que colocar a extensão JS, mesmo o import sendo feito em um arquivo TS. Não sei se me fiz entender.

1 resposta
solução!

Olá, Paulo, tudo bem?

Nos desculpe a demora a responder.

Como o instrutor especifica em uma aula seguinte, se estivermos trabalhando com algum framework ou biblioteca, como o React, não precisamos colocar a extensão do arquivo. Mas nesse curso precisamos colocar a extensão .js, mesmo que estejamos trabalhando com arquivos typescript.

Isso acontece porque apesar do código typescript ser compilado para javascript, o compilador não ajeita a extensão do caminho de importação caso ela esteja faltando ou caso seja .ts. Acredito que isso seja uma limitação de estar trabalhando com um projeto de typescript "puro" em vez de um framework.

Espero ter ajudado! Qualquer dúvida estamos aqui. Abraços e bons estudos :)