Я пишу простой блог с нуля, чтобы выучить node.js + express.Однако я зашла в тупик, когда пытаюсь получить доступ к вложенному каталогу, стили не загружаются.Например:
app.get('/posts/new', (req, res) => {
res.render('create')
});
не будет использовать стили, а просто будет использовать '/ posts'.
Есть идеи, что вызвало это?Вот полный код:
const path = require('path');
const expressEdge = require('express-edge');
const express = require('express');
const mongoose = require('mongoose');
const bodyParser = require('body-parser');
const app = new express();
mongoose.connect('mongodb://localhost:27017/node-blog', {
useNewUrlParser: true
})
.then(() => 'You are now connected to Mongo!')
.catch(err => console.error('Something went wrong', err))
app.use(express.static('public'));
app.use(expressEdge);
app.set('views', __dirname + '/views');
app.use(bodyParser.json())
app.use(bodyParser.urlencoded({
extended: true
}));
app.get('/', (req, res) => {
res.render('index');
});
app.get('/posts/new', (req, res) => {
res.render('create')
});
app.post('/posts/store', (req, res) => {
console.log(req.body)
res.redirect('/')
});
app.listen(4000)
А вот структура каталогов:
└── node-blog
├── database
├── node_modules
├── public
├── css
├── img
├── vendor
├── js
├── theme
└── views
├── layouts
все соответствующие стили общедоступны, а файлы шаблонизатора расположены в представлениях.