2013-08-20 4 views
0

Я пишу приложение с использованием express и хотел использовать swig в качестве механизма рендеринга. Я использовал его раньше, и это было очень хорошо, но версия была изменена, и я не могу понять, что делать. Вот то, что я написал до сих пор:Swig шаблон висит, когда вызывается второй раз

web.js

var express = require('express'); 
var app = express(); 
var swig = require('swig'); // rendering engine 

app.engine('html', swig.renderFile); 
app.set('view engine', 'html'); 
app.set('views', __dirname + '/views'); 
app.use(express.static(__dirname + '/public')); 
app.use(express.bodyParser()); 
app.use(express.logger()); 

app.get('/', function (req, res) { 
    console.log('--> root#home'); 
    res.render('root/home.html', { x: 1 }); 
    console.log('<-- root#home'); 
}); 

var port = process.env.PORT || 5000; 
app.listen(port, function() { 
    console.log("Listening on " + port); 
}); 

просмотров/корень/home.html

You are at root#home, x = {{ x }} 

Теперь дело в том, что когда я начинаю сервер и откройте localhost:5000/ в браузере, он правильно показывает Your are at root#home, x = 1. Но после второго запроса localhost:5000/ он просто зависает ... ответа нет. В журналах я вижу, что запрос входит в эту функцию и выходит из нее

$ foreman start 
15:19:14 web.1 | started with pid 985 
15:19:14 web.1 | Listening on 5000 
15:19:17 web.1 | --> root#home // ** first time ** 
15:19:17 web.1 | <-- root#home 
15:19:17 web.1 | 127.0.0.1 - - [Tue, 20 Aug 2013 11:19:17 GMT] "GET/HTTP/1.1" 200 26 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:23.0) Gecko/20100101 Firefox/23.0" 
15:19:19 web.1 | --> root#home // ** second time ** 
15:19:19 web.1 | <-- root#home 
^CSIGINT received 

ответ

1

Вы используете предварительную версию. Ожидайте некоторые икоты здесь и там.

Это было исправлено: gh292, gh-291

+0

Спасибо за быстрый ответ! И отличный двигатель) – xaxa

Смежные вопросы