Возможно ли использовать статический контент и представления из одного и того же каталога? я нашел частичное решение ниже:Сохранять статический контент и представления из одного каталога?
//Enable Express static content serving:
app.use(express.static(__dirname + '/html')); //Static path is folder called html
//Also enable EJS template engine:
app.engine('.html', require('ejs').__express);
app.set('views', __dirname + '/html'); //Set views path to that same html folder
app.set('view engine', 'html'); //Instead of .ejs, look for .html extension
//Start server
app.listen(8000);
//Express routes:
app.get('/', function(req,res) {
res.render('index', { message: 'hello world'});
//this only serves static index.html :(
});
app.get('/home', function(req,res) {
res.render('index', { message: 'hello world'}); //<-- this serves EJS
//whoo-hoo! serves index.html with rendered EJS 'hello world' message
});
Это работает отлично, первый маршрут «/», который не оказывает EJS кроме. Все остальные маршруты (/ home,/about и т. Д.) Будут удобно обслуживать динамическое EJS вместе со статическим контентом. Нужно ли вообще обмануть, что первая «/» работает так же?
Спасибо, что решил; главный '/' маршрут отлично работает :) – Derrick
Кажется, что 'app.router' устарел, и это больше не работает. – cgmb
@cgmb - спасибо - Ive сделал заметку в сообщении. Процесс должен быть таким же, как я предполагал бы, так как все сначала используют промежуточное ПО. – cyberwombat