如何使用underscore.js sortBy

时间:2014-06-23 14:42:23

标签: javascript underscore.js underscore.js-templating

我试图从我的下划线模板中的json文件重新排列多维数组,这样我就可以将病例从最高#个病例打印到最低病例数

问题来自sortBy函数,实际上并没有对数组进行排序。

这是我正在使用

的数组示例

totalCases数组如下所示:     [163,134,98,118,2,167,152,102,49,4,0,0,0,1,0,0,1265]

sortBy函数是:

 <% _.sortBy(totalCases , function (num) { %>
    <%= num %>
 <% }); %>

它返回     163,134,98,118,2,167,152,102,49,4,0,0,0,1,0,0,1265

我不知道我如何使用sortBy出了什么问题

1 个答案:

答案 0 :(得分:0)

您正在以某种方式将视图与控制器混合。您不想在下划线模板中重新排列数组,但在呈现之前。重新阅读docs for sortBy,它需要回调排序条件或属性名称左右,您不想在那里输出任何内容。

<%  var sortedCases = _.sortBy(totalCases, function(case) {
        return // your sort criteria here, e.g. `case.occurences`
    });
%><ol><%
    _.each(sortedCases, function(case) { %>
        <li><%= case /* … */ %></li>
<%  } %></ol>