Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我如何按日期与Nunjucks排序?_Javascript_Jinja2_Nunjucks - Fatal编程技术网

Javascript 我如何按日期与Nunjucks排序?

Javascript 我如何按日期与Nunjucks排序?,javascript,jinja2,nunjucks,Javascript,Jinja2,Nunjucks,我试图使用jinja文档来解决这个问题,但我所有的尝试都失败了 以下是一些测试JSON数据: items: [{ name: 'item 1', time: '2015-02-12T00:38:18.055Z' },{ name: 'item 2', time: '2014-01-12T00:40:18.881Z' }] 我应该如何形成排序代码以便按时间排序 我试过: {项目中项目的百分比|排序%} 及 {%fo

我试图使用jinja文档来解决这个问题,但我所有的尝试都失败了

以下是一些测试JSON数据:

items: [{
        name: 'item 1',
        time: '2015-02-12T00:38:18.055Z'
    },{
        name: 'item 2',
        time: '2014-01-12T00:40:18.881Z'
    }]
我应该如何形成排序代码以便按时间排序

我试过:

{项目中项目的百分比|排序%}

{%for items中的项| sort(attribute='time')%}

{%for items in items | sort('time')%}

{项目中项目的百分比|排序(时间)%}

{%for items in items | sort(item.time)%}


但什么都不管用。谢谢大家!

将时间解析为历元时间,并将其作为另一个属性传递,以便对其进行排序

items: [{
    name: 'item 1',
    time: '2015-02-12T00:38:18.055Z',
    epoch: 1232323532
}]

或者使用自动执行此操作的自定义筛选器

Nunjuck似乎只支持位置参数:

{% for item in items|sort(false, true, 'time') %}
{{item.name}}<br>
{% endfor %}
{items中的项的百分比|排序(false,true,'time')%}
{{item.name}}
{%endfor%}
var res=nunjucks.renderString({%for items in items | sort(false,true,'time')%%}{{{item.name}
{%endfor%},{items:[{ 名称:“项目1”, 时间:“2015-02-12T00:38:18.055Z” },{ 名称:“项目2”, 时间:“2014-01-12T00:40:18.881Z” }] }); document.body.innerHTML=res
现在nunjucks已经支持参数,因此{%for items in items | sort(attribute='time')%}可以正常工作

不需要数字属性值,字符串将比较正常。这节省了我很多时间。谢谢