2
respostas

Error during migration show

Olá,

Estou tendo um problema ao executar o comando: typeorm-ts-node-esm --dataSource src/db/data-source.ts migration:show na Aula 5 do curso: Nest.js: lidando com migrações, relacionamentos ORM e erros em uma API

O Erro:

Error during migration show:
Error: Unable to open file: "<caminho_do_projeto>\src\db\data-source.ts". Cannot use import statement outside a module
        at CommandUtils.loadDataSource (C:\Users\xyz\AppData\Roaming\npm\node_modules\typeorm\commands\CommandUtils.js:22:19)
        at async Object.handler (C:\Users\xyz\AppData\Roaming\npm\node_modules\typeorm\commands\MigrationShowCommand.js:27:26)

Ao executar o comando no diretório dist/db/data-source.js ele funciona. Vejo que o problema é somente nos arquivos ts utilizando ts-node-esm Poderiam me ajudar?

2 respostas

Oi, Vitor, tudo bem?

Esse erro "Cannot use import statement outside a module" costumava acontecer com a gente quando usávamos a versão 20 no Node, que, no momento que escrevo, ela é a Current do Node.js e não a LTS mais recente.

Digite node --version no terminal para verificar sua versão. Recomendamos que utilize a 18 para esse curso (que no momento é a LTS mais recente).

Verifique se esse é o problema!

Oii, Vitor! Tudo bem?

Para complementar, você pode também testar esse comando:

typeorm-ts-node-esm --dataSource dist/db/data-source.js migration:show

Dessa forma, você estará utilizando o arquivo JavaScript gerado na pasta dist e evitará o erro de importação de módulo.

Bons estudos!