Frage

Ich habe ein bisschen mit Node.js. gespielt. Ich habe kürzlich angefangen, mit Express zu spielen und habe eine grundlegende App eingerichtet. Ich wollte Lenker als meine Ansichtsvorlagen -Engine verwenden, aber ich traf auf eine Wand - es konnte nicht die Ansicht "index.html" angezeigt werden.

Ich habe index.html im selben Verzeichnis wie app.js und und so würde ich denken, dass der folgende Code kein Problem damit hätte, Index zu finden.html ...

Ich habe herum gesucht, aber es scheint, dass umfassende Beispiele von irgendetwas außer Jade selten sind ... jemand hat Erfahrung mit dieser Kombination?

Danke im Voraus!

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);

Aktualisieren:

Ich habe gefehlt:

app.set('views', __dirname + '/');
app.register('.html', require('handlebars'));

In meiner Konfiguration ... scheint es, dass das Register von '.html' sehr wichtig ist, da es die Lenker -Assoziation mit .html angibt ...

Ich hoffe das hilft jemandem ...

Da ich ein SO Noob bin, kann ich meine eigene Frage nicht für 7 Stunden beantworten, aber wenn jemand das vollständige Arbeitsbeispiel braucht, kann ich morgen posten ...

War es hilfreich?

Lösung

Standardmäßig wird es in einem Ordner namens angezeigt views Aus dem Verzeichnis ist das Skript. Wenn Sie ein anderes Dir verwenden, müssen Sie diese angeben.

app.set('views', __dirname + '/views');

Express sollte Ihnen auch weitere Informationen darüber informieren, wo es versucht, die Ansicht zu finden. Dies sollte Ihnen helfen, genau zu wissen, wo sie suchen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top