充分利用JSON数组的最后一个元素的把手模板(Getting the last element fr

2019-06-24 18:58发布

所以,我发现数组元素可以使用把手来访问:

{{myArray.2.nestedObject}} and {{myArray.0.nestedObject}}

..to得到例如第三和第一要素。 ( 车把存取阵列项 )

有没有一种方式来获得一个数组的最后一个元素 ? 我试图为它创造一个帮手:

Handlebars.registerHelper("lastElement", function(array) {
  return array.last();  //Array.prototype extension
});

......,把它作为模板如下:

{{lastElement myArray}} or even {{lastElement myArray.lastElement nestedArray}}

可悲的是,这是行不通的。 辅助函数返回字符串明显。 我需要的是一种方法,能够与多维数组甚至做到这一点。

Answer 1:

应该工作,我测试过它。

模板:

{{last foo}}

数据:

{foo : [1,2,3,4,5,6]}

帮手:

Handlebars.registerHelper("last", function(array) {
  return array[array.length-1];
});


Answer 2:

上面这段代码工作在所有情况下的罚款。 但是,如果数组传递如果空阵列,所述车把功能投掷误差的可能性是存在的。 转而执行零检查,然后返回相应的值。



文章来源: Getting the last element from a JSON array in a Handlebars template