2012-06-29 11 views
8

Ecco cosa ho in index.jade. E sì sto usando express.jsParziale non definito in giada

extends layout 

block content 
    h1 Invoices: 
    != partial("invoice") 

Questo corrisponde a quello che vedo in ogni singola esercitazione Jade/Express. Ma ottengo "Errore di riferimento: parziale non definito". Qualche idea, perché?

risposta

8

La versione più recente di Jade non supporta i partial. Potresti seguire tutorial obsoleti. Si prega di leggere su documentazione giada here

+0

Wow, pensavo di essere perfettamente al sicuro seguendo la guida express.js ufficiale – Max

+2

Express v3 è ancora beta, i loro documenti non sono ancora stati aggiornati. Controlla [Migrazione da 2.x a 3.x] (https://github.com/visionmedia/express/wiki/Migrating-from-2.x-to-3.x). –

16

Usa include, senza virgolette (Questo esempio è dalla jade documentation)

users = [{ name: 'Tobi', occupation: 'Ferret' }] 

each user in users 
    .user 
    include invoice 

Dove invoice è il modello "parziale".

+0

'include' funziona correttamente ma come posso passare i parametri lì? –

+0

L'inclusione prenderà il contesto attuale (nell'esempio sopra, 'fattura 'avrà accesso a' utente'), quindi è possibile passare i parametri creando un pacchetto di proprietà per esso. – Tyrsius