2013-06-23 34 views
0

短版:我想玉產生類似{{#如果readOnly的}}只讀{{/ if}個}屬性。 這可能嗎?玉預編譯器輸入屬性

我預編譯我的玉模板客戶端車把.hbs模板文件,使玉語法像

input(type="text", name="dlg_{{fieldName}}",id="dlg_{{fieldName}}") 

變得與預編譯

<input type="text" name="dlg_{{fieldName}}" id="dlg_{{fieldName}}" /> 

我想包括一個客戶端有條件的「只讀」屬性但這種解決方案不起作用

input(type="text",readonly="{{#if readOnly}}true{{else}}false{{/if}}",name="dlg_{{fieldName}}",id="dlg_{{fieldName}}") 

什麼,我需要在預編譯(無玉條件句)產生的

<input type="text" {{#if readOnly}}readonly{{/if}} name="dlg_{{fieldName}}" id="dlg_{{fieldName}}" /> 

我知道我可以直接包括玉模板中的HTML代碼,但這個空隙的興趣和玉的美enterely。

解決方案這樣也工作,但不是最優的

|{{#if readOnly}} 
input(type="text", name="dlg_{{fieldName}}",id="dlg_{{fieldName}}",readonly) 
|{{else}} 
input(type="text", name="dlg_{{fieldName}}",id="dlg_{{fieldName}}") 
|{{/if}} 

我也想過,包括象「的屬性數據readony = {{#如果readOnly的}}真正的{{其他}}假{{/如果}}「並在客戶端設置readonly,但在模板呈現後需要更多處理。

回答

1

要簡單地回答,我想你不能。 我寧願推薦使用玉客戶端:

if readOnly 
    input(type="text", name="dlg_#{fieldName}", id="dlg_#{fieldName}", readonly) 

只是通過{client: true}玉。