2012-06-09 11 views
9

Hola Estoy intentando utilizar bloques de Jade y extiende para un proyecto Node.js y el IDEA es tener algo como esto:Jade - Utilizar Trazos en el interior etiqueta script

layout.jade:

head 
    script 
     $(document).ready(function() { 
     block js_doc_ready 
      //here goes the doc ready 
     }); 

index.jade:

block js_doc_ready 
    alert('hello!'); 
    alert('one more js line code'); 
    alert('end my js doc ready for this view'); 

esto me daría un index.html así:

... 
<head> 
    <script type="text/javascript"> 
      $(document).ready(function() { 
       alert('hello!'); 
       alert('one more js line code'); 
       alert('end my js doc ready for this view');   
      }); 
    </script> 
</head> 
... 

Pero cuando veo el resultado, el 'bloque de js_doc_ready' no se considera un bloque de jade. Además, incluso si se consideró un bloque, el "alerta ('¡Hola!);' no se consideraría una, sino una etiqueta de Jade

Esto es algo que solía hacer en la plantilla django, pero en jade con todas estas etiquetas, y sin libertad para hacer html puro, todavía lo encuentro un poco demasiado extraño para hacer estas cosas.

Respuesta

23

Jade no traducen lo que es el 'estilo' en el interior y el código 'guión'. Nunca.

¿Qué va a trabajar se basa en una respuesta que he dado to another question (usando un elemento de estilo, pero eso es básicamente lo mismo).

!!! 
head 
    title Hello jade 
    | <script type='text/javascript'> 
    | $(document).ready(function() { 
     block js_doc_ready 
    | }); 
    | </script> 

De esta forma: jade incluirá las etiquetas HTML 'script' y las líneas $ .ready, pero también incluirá su bloque. !

+0

agradecimiento que archivan algo así como el uso de:!!! título Hola jade = " Pero esto parece un poco mejor ... ¿puedo tener una cadena con más y luego en línea sin usar eso? ? – Arruda

+0

Ya veo, gracias. Ya aceptado. – Arruda

+0

tenga en cuenta: javascript type es 'text/javascript' an not 'text \ javascript' –

Cuestiones relacionadas