node files node.js express stylesheet ejs

node.js - files - load css express



No se puede conseguir que la hoja de estilo funcione con ejs para node.js (2)

Declara un directorio estático:

app.use(express.static(__dirname + ''/public'')); <link rel=''stylesheet'' href=''/style.css'' />

Estoy tratando de hacer un servidor simple con nodo, express y ejs para la plantilla. He conseguido que el servidor señale la página, la cargue e incluso puedo generar otros bits de código con la declaración de inclusión. Sin embargo, por alguna razón, la hoja de estilo no se cargará.

app.js

var express = require(''express''), app = express(), http = require(''http''), server = http.createServer(app), fs = require(''fs''); var PORT = 8080; app.set(''view engine'', ''ejs''); app.get(''/'', function(req, res){ res.render(''board.ejs'', { title: "anything I want", taco: "hello world", something: "foo bar", layout: false }); }); app.listen(PORT); console.log("Server working");

El archivo ejs está en un directorio views / board.ejs

<html> <head> <title><%= title %></title> <link rel=''stylesheet'' href=''../styles/style.css'' /> </head> <body > <h1> <%= taco %> </h1> <p> <%= something %> </p> </body> </html>

y style.css está en un directorio styles / style.css relativo a app.js

p { color:red; }

He intentado todos los caminos que puedo concebir para la href del enlace, incluso en relación con los puntos de mi host local en relación con app.js en relación con board.ejs e incluso solo style.css, pero ninguno parece funcionar. Cualquier sugerencia es bienvenida.


en app.js:

you must first declare static directory app.use("/styles",express.static(__dirname + "/styles"));

en el archivo ejs:

<link rel=''stylesheet'' href=''/styles/style.css'' />