这就是我渲染模板的方式(点击我页面的某些元素)
$("[entity]").click(function(e) {
var entityType = $(this).data('type')
var source = $(`#${entityType}Tmpl`).html();
var tmpl = $.templates(source);
$("#details").html(tmpl.render(getData(entityType));
});
我想知道是否有jsRender方法为两个entityType定义单个模板,如:
<script id="entity1;entity2" type="text/x-jsrender">type: {{:entityType}} </script>
答案 0 :(得分:0)
您可以将entityType作为帮助程序传递。
var helplers = {
type: entityType,
getValue: myGetValFunction,
...
};
var html = tmpl.render(getData(entityType), helpers);
$("#details").html(html);
然后根据类型
制作模板渲染输出<script id="tmpl" type="text/x-jsrender">
type:
...
{{if ~type==='foo}}...{{/if}}
...
{{:~getValue(~type)}}
...
</script>