1
resposta

Dúvida boba sobre o import express from 'express'

import express from 'express'

const app = express()

por que eu tenho que atribuir o express para o app? Não posso simplesmente usar o express.get por exemplo?

outra coisa, na linha de código: import express from 'express', sei q um express(palavra) referencia o framework, mas o outro express seria o q?

1 resposta

Boa tarde Aron,

Sobre atribuir 'express()' à variável app, isso é necessário pois o framework express cria um objeto App por trás dos panos. O nome da variável é irrelevante, mas por convenção, é nomeada 'app'. E nessa variável é "armazenado" objeto App criado pelo express. Como é esse objeto que possui o método .get(), apenas usando 'express.get()' nada aconteceria. (Exceção: Se alterar o scope, pode usar 'express.get()' com a seguinte linha: const express = express(); e depois chamando express.get(), entretanto, isso criará problemas de conflito de nomeação dentro do código, e é absolutamente desencorajado.)

A expressão "import express from 'express'" indica que você está importando o objeto express (exportado internamente de lá) , de dentro do módulo 'express'. Em termos de importação local, isso é o mesmo que "import express from './node_modules/express/index.js'", entretanto, esse caminho não é necessário, pois o caminho até './node_modules/express/index.js' já está referenciado no seu arquivo package.json, e associado ao termo 'express', que é o nome do pacote, e por isso você pode usar o caminho de importação encurtado.

Espero que resolva sua dúvida :)