2016-06-26 9 views
6

Z jakiegoś powodu nie mogę przekazać zmiennej do szablonu mopsa za pomocą węzła JS.Węzeł JS przekazuje zmienną do Jade/Pug

app.get("/", function (req, res) { 
    res.render('index', { hello : 'Hey'}) 
}) 

....

extends layout.pug 

block content 
    h1 #{hello} guy 

To właśnie wraca "gościa" w pliku index.html

+0

można umieścić więcej kodu? czym jest "aplikacja"? co ma "layout.pug"? – chharvey

Odpowiedz

6

myślę używasz JADE kodowania (# {}) cześć z „mops "(zaktualizowana jade) wtyczka ze statycznym .html - całkowicie błędna.

wykonaj poniższe linie:

  1. stosowanie tego pierwszego

    app.set('views', __dirname + '/public/views'); 
    app.set('view engine', 'pug'); 
    
  2. niż przekazać to do pierwszej wizyty

    app.get('/', function (req, res) { 
        res.render('index', { title: 'Hey', message: 'Hello there!'}); 
    }); 
    
  3. niż echo w pliku szablonu „index.pug "in"/public/views "

    html 
        head 
        title= title 
    body 
        h1= message 
    
+0

To wciąż nie działa, wszystko jest takie samo. –

+0

dać mi swój Struktura katalogów migawkę + pokaż mi swój plik z serwera app.set ('poglądów', __dirname + '/ public/widoki'); app.set ("widok silnika", "mops"); niż przy pierwszym wejściu na stronę app.get ('/', function (req, res) { res.render ('index', {title: 'Hey', message: 'Hello there!'}); }); –

+0

Teraz po prostu mówi "Express" https://github.com/jpking72/nodejsfiddle.git –

-1

może trzeba ustawić kod jako ...

app.get("/", function (req, res) { 
    res.render('index', { 'hello' : 'Hey'}) 
}) 
+0

Nie jestem pewien co do rozwiązania oryginalnego pytania, ale mogę was zapewnić, że to nie jest rozwiązanie i nie powinno być oddziaływać. Używałem ekspresu i mopsa w przeszłości, a ta sugestia niczego nie zmieni. Pierwotny użytkownik pytający prawdopodobnie musi podłączyć silnik szablonu w inny sposób, itd., Lub może pozostawia krok. Nie pamiętam jednak wystarczająco dużo, aby odpowiedzieć na PO. – Ryan

+0

jest to nieprawidłowe. javascript dosłowne obiekty mogą mieć cytowane klucze lub nie, to nie robi różnicy. – chharvey