Grałem trochę z Node.js. Niedawno zacząłem bawić się programem Express i konfigurowałem podstawową aplikację. Chciałem użyć Handlebars jako mojego mechanizmu wyświetlania szablonów, ale trafiam w ścianę - nie udało mi się zlokalizować widoku "index.html"NodeJS + Express + Handlebars - nie udało się zlokalizować widoku "index.html"
Mam index.html w tym samym katalogu, co app.js i tak myślę, że poniższy kod nie stanowiłby problemu z lokalizacją index.html ...
Szukałem, ale wydaje się, że obszerne przykłady czegokolwiek oprócz jade są rzadkie ... Ktoś ma doświadczenie z tym zestawem?
Z góry dziękuję!
var express = require('express')
, app = express.createServer();
app.configure(function(){
app.set('view engine', 'handlebars');
app.set("view options", { layout: false })
});
app.get('/', function(req, res){
var data = {
name: "Ford Prefect",
home: "a small planet somewhere in the vicinity of Betelgeuse"
}
res.render('index.html', data);
});
app.listen(3000);
Aktualizacja:
mi brakuje:
app.set('views', __dirname + '/');
app.register('.html', require('handlebars'));
w moim config ... wydaje się, że rejestr '.html' jest dość ważne, gdyż określa handlebars association with .html ...
Mam nadzieję, że to pomoże komuś ...
Ponieważ jestem NOOB, nie mogę odpowiedzieć na moje pytanie przez 7 godzin, ale jeśli ktoś potrzebuje pełnego przykładu pracy, mogę wysłać jutro ...
To "Ford Prefect" – fent
Możesz rozważyć nazwanie swoich plików .handlebars zamiast .html, aby było oczywiste, że nie jest to zwykły plik html. Wkrótce [.hbs] (https://github.com/wielats/handlebars.js/issues/174) może również działać? – MyGGaN