Express js不提供静态文件
我已经走上了这条路
var path = require('path'); var express = require('express'); var app = express(); var admin = express(); admin.use(express.static(path.join(__dirname, 'public/'))); // mount admin path app.use('/admin', admin);
然后我定义了一些路线,例如
admin.get('/jobs', function(req, res){ res.render('jobs/index'); }); admin.get('/jobs/create', function(req, res){ res.render('jobs/create'); });
在第一个路由静态文件,如js,css,images
加载没有问题。 但在第二个它不会加载文件。
文件加载在像这样的意见
<link rel="stylesheet" href="styles/css/main.css">
注意:styles目录在我的工作目录中的公共文件夹下。
那么问题是什么? 我做错了什么?
将静态中间件添加到admin
快速实例中,该实例安装在/admin
path的主app
中。 这意味着它将永远不会被调用路由以外的匹配/admin
。 将您的中间件移动到主应用程序实例,
app.use(express.static(path.join(__dirname, 'public')))
首先: app.use(express.static(path.join(__dirname, 'public')));
那么href="/styles/css/main.css"
?
希望能帮助到你。