Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

em routes, no index quando adiciono a parte de autores da um erro:

(acho que nao ta carregando o print, vou transcrever)

import express from 'express';
import livrosRoute from './livro.routes.js';
import autoresRoute from './autor.routes.js'   <<<--- SE REMOVER< O CODIGO FUNCIONA

const routes = (app)=> {
    app.route('/').get((req, res)=> {
        res.status(200).send({titulo: 'Curso de Node.JS'})
    });

    app.use(express.json(), 
    livrosRoute, 
    autoresRoute    <<<--- SE REMOVER< O CODIGO FUNCIONA
    );
}

export default routes;

ERRO:

Error [ERR_MODULE_NOT_FOUND]: Cannot find module 'C:\Users\Usabit\Desktop\LucEstudos\Dev\JavaScript\alura-node\src\controllers\AutoresController' imported from C:\Users\Usabit\Desktop\LucEstudos\Dev\JavaScript\alura-node\src\routes\autor.routes.js

não sei o que pode ser.

3 respostas
solução!

Oi, tudo bem?

Na verdade, analisando o seu erro, ele está sendo gerado no arquivo autor.routes.js. O erro indica que, nesse arquivo, ele não está conseguindo importar o arquivo AutoresController.

Então, no arquivo autor.routes.js, verifique se você está importando corretamente o arquivo do controlador. Talvez sua importação esteja assim:

import AutorController from "../controllers/AutoresController";

Mas ela deve estar assim, com a extensão .js no final do caminho:

import AutorController from "../controllers/AutoresController.js";

Verifique se é isso mesmo. Se não for, pode mandar o código do arquivo autor.routes.js, por favor?

Espero ter ajudado! Abraços e bons estudos :)

Era isso mesmo, mas na controller a importação da model nao tinha o .js

Isso deve ter acontecido porque quando utilizamos o recurso de auto-completamento do VSCode, normalmente ele não coloca a extensão do arquivo. Então toda vez que você for importar uma informação de outro arquivo utilizando import, você deve conferir se a extensão .js está presente.