我已将我的css文件附加到我的html文件中。然后我在节点js中使用express运行并打开页面。但是,当我通过节点js运行Web服务器时,css文件无法打开 的 HTML(show.ejs)
<html>
<head>
<link rel="stylesheet" type="text/css" href="assets/css/style.css" media="screen" />
</head>
<body>
<h1> Value is <%= detail %></h1>
</body>
</html>
节点js
//required npm
var express = require('express');//express 4.*
var path = require('path');
// define app
var app = express();
// set up template engine
app.set('view engine', 'ejs');
//static files
//app.use('/static', express.static('/public')); //not working
app.use('', express.static(path.join(__dirname, 'public'))); //not working
//app.use(express.static(__dirname + '/public')); //not working
//app.use('/public/assets', express.static('public/assets')); //not working
app.get('/show/:id', function (req, res) {
res.render('./panel/show', {
detail: req.params.id ,
});
//port
app.listen(3000);
我的项目文件夹
node_modules
视图
面板
show.ejs
公共
资产
CSS
的style.css
app.js
的package.json
答案 0 :(得分:1)
输入<link rel="stylesheet" type="text/css" href="assets/css/style.css" media="screen" />
您正试图在公共目录外找到assets
文件夹。
因此,当您/
时,它会找到public
目录,该目录在快速服务器中是静态定义的。
<html>
<head>
<link type="text/css" href="/assets/css/styles.css" rel="stylesheet">
</head>
<body>
<h1> Value is <%= detail %></h1>
</body>
</html>