2012-11-21 9 views
5

Używam node.js i express.j s do renderowania strony index.jade, która zawiera kilka bloków skryptu, które zawierają szablony do użycia przez szkielet i podkreślenie. Problem, który napotykam, polega na tym, że z powodu włączenia zmiennych stylu <% =%> w szablonach, renderowanie Jade nie działa. Poniższy fragment kodu powoduje błąd składni:Zapobieganie interpolacji Jade dla szablonu skryptu

script#tpl-things-list-item(type='text/template') 
    td 
    a(href=<%= _id %>) link text 
    td <%= name %> 
    td <%= age %> 

pamiętać, że jest to tylko problem kiedy użyć zmiennej wewnątrz wartości href, jeśli usunąć całą href, ten fragment działa dobrze. Czy istnieje sposób obejścia tego? Chciałbym nadal używać Jade do definiowania szablonów, ponieważ jest to bardzo zwięzłe, ale jest to zatyczka na show.

+0

Nie mogę tego obliczyć. dziwne. –

Odpowiedz

3

Mam to.

!!! 5 
html(lang='en') 
    head 
     title= title 
    body 
     h1= "Hello World!" 
     script#tpl-things-list-item(type='text/template') 
      td 
       a(href!="<%= _id %>") link text 
      td <%= name %> 
      td <%= age %> 
+0

Co oznacza "!" przed "=" w wywołaniu href? – nickbona

+0

Generuje dla mnie "nieodwzorowany kod wykonywalny" https://github.com/visionmedia/jade#readme –

+0

, to wypisuje ciąg literowy, np. 'a href! =" <%= _id %> "' zamiast 'a href =" 123 "'. jakieś sugestie? mój pełny skrypt to: \t 'script (type = 'text/template') a (href! =" <%= _id%> ") <%= _id%>' – emilebaizel

Powiązane problemy