【发布时间】:2018-05-27 17:45:21
【问题描述】:
我的静态文件在 app.js 中的任何路由上都能完美运行。但是我的 /routes/blog.js 文件中的任何路由都没有加载我的静态文件。
Folder structure:
Project
├── app.js
│
│
├── public
└── bootstrap...
└── img...
│
│
├──views
└── index.html
└── 404.html
└── etc..
│
│
├──routes
└── blog.js
这是我的 app.js 文件
const express = require('express');
const app = express();
const path = require('path');
const blog = require('./routes/blog')
//Couple other requires...
// Middleware
app.use(express.static(path.join(__dirname, 'public')));
app.use('/blog', blog)
// Various get routes...
// Start our server on port 3000
app.listen(3000, () => console.log('Node app listening on port 3000...'));
这是我的 /routes/blog.js 文件
const express = require('express');
const router = express.Router();
router.get('/', (req, res) => {
res.render('blog.html');
});
// Post a blog post
router.route('/post')
.get( (req, res) => {
res.render('post.html');
})
.post( (req, res, next) => {
//STUFF
res.redirect('/blog');
});
module.exports = router;
当我在通过 app.js 文件的任何页面上查看页面源时,我指向 htttp://localhost:3000/bootstrap/bootstrap.min.css/ 但是当我查看通过 app.js 文件的任何页面的源时blog.js 文件(例如,如果我转到 localhost:3000/blog/post)我指向 htttp://localhost:3000/blog/bootstrap/bootstrap.min.css/ 并且不会加载静态文件
【问题讨论】:
标签: node.js express static-files