我正在寻找一个聪明的方法在dust.js中确定一个对象数组(比如说项目)是否至少有一个项目,最好不使用@if或循环遍历每个项目
如果这样做会很好,但它不会:(
{@size key=items}
{@gt value=0}
asdf
{/gt}
{/size}
答案 0 :(得分:1)
我创建了一个具有相同要求的issue。通常,您应该创建一个可以接受内部块的替代帮助程序,并且此帮助程序将在内部调用@size
帮助程序。
我们将其命名为@sizeOf
:
dust.helpers.sizeOf = function(chunk, context, bodies, params) {
var value = this.size(chunk, context, bodies, params);
return (bodies && bodies.block) ? chunk.render(bodies.block, context.push({ isSelect: true, isResolved: false, selectKey: value })) : value;
};
我们应该这样使用它:
{@sizeOf key=items}
{@gt value=0}
asdf
{/gt}
{/size}
答案 1 :(得分:1)
假设items是一个空数组,这应该有效:
{?items}
{#items}
...
{/items}
{:else}
There are no results
{/items}