Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

236
Visualizações
No se puede cargar CSS en Express View usando un enrutador

Tengo un problema en el que no puedo cargar mi CSS en una vista que se procesa desde un enrutador. El CSS se carga bien para una vista renderizada desde app.js en la raíz del directorio del proyecto

Aquí está mi estructura de directorios,

 node_modules/ public/ styles/ form.css home.css routes/ form.js product.js views/ index.ejs savoury.ejs app.js package.json

Aquí está mi app.js :

 import express from 'express'; import path from 'path'; import productRouter from './routes/product.js'; import formRouter from './routes/form.js'; import dotenv from 'dotenv'; dotenv.config(); const port = process.env.PORT || 3030; const __dirname = path.resolve(); const app = express(); app.use(express.urlencoded({ extended: true })); // access request body for POST app.use(express.json()); // process JSON in request body app.use(express.static(path.join(__dirname,'public'))); // Look up our static files app.set('view engine','ejs'); // Mount our routers app.use('/product',productRouter); app.use('/form',formRouter); app.get('/',(req,res) => { res.render('index'); }) app.listen(port, () => { console.log(`Server running on port ${port}`) });

El problema surge, al menos que yo sepa, cuando trato de mostrar una vista desde un enrutador llamado formRouter que está definido en mi directorio de routes como,

 import express from 'express'; // Serve our forms from this router const formRouter = express.Router(); // Render our add savoury form from here formRouter.get('/add/savoury',(req,res) => { res.render('savoury'); });

La vista de savoury vincula la hoja de estilo de esta manera:

 <link rel="stylesheet" href="styles/form.css">

Luego recibo el siguiente error en la consola del navegador: Refused to apply style from 'http://localhost:3030/form/add/styles/form.css' because its MIME type ('text/html') is not a supported stylesheet MIME type, and strict MIME checking is enabled.

No sé cuál es el problema. Cualquier ayuda es apreciada.

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Se negó a aplicar el estilo de 'http://localhost:3030/form/add/styles/form.css' porque su tipo MIME ('text/html') no es un tipo MIME de hoja de estilo compatible y la verificación estricta de MIME está habilitada.

Entonces, si recibe ese mensaje de error, está tratando de diseñar el html usando un mensaje 404

Pero, ¿por qué recibe un error 404?

Estás recibiendo un error 404 debido a la ruta o ruta a la que llamas

si observa detenidamente, puede ver que 'http://localhost:3030/form/add/styles/form.css' es la ruta que intenta solicitar el css que no existe

Ahora en la ruta de tu archivo tienes

 public/ styles/ form.css home.css

lo que significa que el camino al que deberías estar llamando es

https://localhost:3030/estilos/formulario.css

no http://localhost:3030/form/add/styles/form.css

Entonces, para deshacerse del error, edite su html para

 <link rel="stylesheet" href="/styles/form.css">

La barra inclinada delante de los estilos significa que está llamando desde el directorio raíz.

pero omitirlo o usar ./styles significa que es de esa carpeta de ruta

Si esto responde a su pregunta, recuerde marcarla como respondida.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda