简短版本:我希望jade能够生成类似{{#if readOnly}} readonly {{/ if}}属性的内容。 这可能吗?
我将我的Jade模板预编译到客户端手柄.hbs模板文件,以便像
这样的jade语法input(type="text", name="dlg_{{fieldName}}",id="dlg_{{fieldName}}")
变为预编译
<input type="text" name="dlg_{{fieldName}}" id="dlg_{{fieldName}}" />
我希望包含一个客户端条件“readonly”属性,但这种解决方案不起作用
input(type="text",readonly="{{#if readOnly}}true{{else}}false{{/if}}",name="dlg_{{fieldName}}",id="dlg_{{fieldName}}")
我需要在预编译时生成的内容(没有jade条件)
<input type="text" {{#if readOnly}}readonly{{/if}} name="dlg_{{fieldName}}" id="dlg_{{fieldName}}" />
我知道我可以直接在jade模板中包含html代码,但这会使jade的兴趣和美丽无趣。
这样的解决方案也有效但不是最佳
|{{#if readOnly}}
input(type="text", name="dlg_{{fieldName}}",id="dlg_{{fieldName}}",readonly)
|{{else}}
input(type="text", name="dlg_{{fieldName}}",id="dlg_{{fieldName}}")
|{{/if}}
我还想过包含一个属性,比如“data-readony = {{#if readOnly}} true {{else}} false {{/ if}}”并在客户端设置readonly,但这需要更多的处理模板被渲染。
答案 0 :(得分:1)
简单回答,我想你不能。 我宁愿推荐使用jade客户端:
if readOnly
input(type="text", name="dlg_#{fieldName}", id="dlg_#{fieldName}", readonly)
只需将{client: true}
传递给jade。