2014-09-30 59 views
0

我需要寫一些JavaScript代碼在我玉模板,但不腳本標籤中纏繞:如何在jade中編寫javascript塊?

body 
    container 
     p 
      - var obj = { 
      - "price": 100, 
      - "qty: 3 
      -}; 

      - var result = obj.price * obj.qty; 

      Result is: !{result}. 

在上面的代碼我做了一些計算和輸出結果。所有工作正常,但看起來很醜,由於多個-。玉是否支持一些塊來寫javascript而不使用多個-

回答

2

玉目前不支持將多行unbuffered code串在一起。每個-後應該有一個完整的聲明。

obj將在一個被初始化:

p 
    - var obj = { price: 100, qty: 3 }; 

或在多條語句設置:

p 
    - var obj = {}; 
    - obj.price = 100; 
    - obj.qty = 3; 

或者定義爲 「本地人」,以渲染:

var jade = require('jade'); 

var html = jade.renderFile(__dirname + '/template.jade', { 
    obj: { 
     price: 100, 
     qty: 3 
    } 
}); 
p Result is: #{obj.price * obj.qty). 

還要注意的是Result ...需要一個|前綴來表示它作爲一個line of text,當它在它自己的路線。

p 
    | Result is #{result} 
+0

感謝您的完整答案。你知道關於在玉石中添加這個功能的計劃嗎? – Erik 2014-09-30 04:55:45