2011-10-23 7 views
5

Sto usando jade per node.js. Ho 1 mixin (test):Jade, mixin && html

mixin some(field, field2) 
    .field!= field 
    .field2!= field2 

ho bisogno messo in mixin del codice HTML, ad esempio:

#test 
    some(a(href='http://test')='test', span.description=description) 

Voglio che:

<div id="test"> 
    <div class="field"><a href="http://test">test</a></div> 
    <div class="field2"><span class="description">bla bla bla</span></div> 
</div> 

come posso farlo? Ora so solo 1 brutta decisione:

#test 
    - var field = '<a href="http://test">test</a>'; 
    - var field2 = '<span class="description">' + descriptions + '</span>'; 
    mixin some(field, field2) 

Siamo spiacenti, per il mio cattivo inglese :)

risposta

1

Sembra che la soluzione attuale è l'unico modo. I parametri di un mix sono espressioni javascript, non elementi di giada.

1

In realtà si può passare Jade marcatura per mixin così

mixin article(title) 
    .article 
    .article-wrapper 
     h1= title 
     if block 
     block 
     else 
     p No content provided 

+article('Hello world') 

+article('Hello world') 
    p This is my 
    p Amazing article 

So che questa domanda è abbastanza vecchio. Lasciare risposta in modo che qualcun altro possa trovarlo utile.