繁体   English   中英

Express js不提供静态文件

[英]Express js does not serve static files

我已经安装了这样的路径

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 express实例中,该实例在/admin路由中安装在主app中。 这意味着除了匹配/admin路由外,它永远不会被其他路由调用。 而是将您的中间件移至主应用程序实例,

app.use(express.static(path.join(__dirname, 'public')))

首先: app.use(express.static(path.join(__dirname, 'public')));

然后href="/styles/css/main.css"

希望能帮助到你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM