Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.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 AngularJS中自动更改地图的顺序_Javascript_Angularjs - Fatal编程技术网

Javascript AngularJS中自动更改地图的顺序

Javascript AngularJS中自动更改地图的顺序,javascript,angularjs,Javascript,Angularjs,我有一个map对象,其中包含一组元素,这些元素具有键和值对。关键是字符串日期,其值为消息。当我使用控制台打印地图对象时,我将地图对象存储在一个$scope变量中。log我将过去日期到当前日期的数据作为键按升序获取 请参阅下面的映射对象代码段。但是当我在html中看到时,顺序会自动改变。有人能说一下为什么要改变订单吗 地图的JSON数据 {"Mar 13, 2017":[{"msg":"Hello Mar 13","created":1489404180586}, "Mar 22, 2017":[

我有一个map对象,其中包含一组元素,这些元素具有键和值对。关键是字符串日期,其值为消息。当我使用
控制台打印地图对象时,我将地图对象存储在一个
$scope
变量中。log
我将过去日期到当前日期的数据作为键按升序获取

请参阅下面的映射对象代码段。但是当我在html中看到时,顺序会自动改变。有人能说一下为什么要改变订单吗

地图的JSON数据

{"Mar 13, 2017":[{"msg":"Hello Mar 13","created":1489404180586},
"Mar 22, 2017":[{"msg":"Hello Mar 22","created":1490185383843}],
"Apr 16, 2017":[{"msg":"Hello Apr 16","created":1492329078569}],
"Apr 24, 2017":[{"msg":"Hello Apr 24","created":1493055290741},
"Apr 25, 2017":[{"msg":"Hello Apr 25","created":1493081729979}]}
HTML

<div ng-repeat='(key, value) in map'>    
 <p><span>Apr 16,2017</span></p>
 <div ng-repeat="msg in value | orderBy : 'created'">
 <div>
   <div>           
      <span>Hello Apr 16</span>
   </div>
   <p><span>Apr 24,2017</span></p>
 <div ng-repeat="msg in value | orderBy : 'created'">
 <div>
   <div>           
      <span>Hello Apr 24</span>
   </div>
   <p><span>Apr 25,2017</span></p>
 <div ng-repeat="msg in value | orderBy : 'created'">
 <div>
   <div>           
      <span>Hello Apr 25</span>
   </div>
   <p><span>Mar 13,2017</span></p>
 <div ng-repeat="msg in value | orderBy : 'created'">
 <div>
   <div>           
      <span>Hello Mar13</span>
   </div>
   <p><span>Mar 22,2017</span></p>
 <div ng-repeat="msg in value | orderBy : 'created'">
 <div>
   <div>           
      <span>Hello Mar22</span>
   </div>
</div>
</div>

2017年4月16日

你好,4月16日 2017年4月24日

你好,4月24日 2017年4月25日

你好,4月25日 2017年3月13日

你好,Mar13 2017年3月22日

你好,Mar22
能否向我们展示您的html代码,以及您尝试过的内容。在您想要实现的内容之上添加了html代码?您的代码混淆了您的地图没有自动更改,您只是使用
角度过滤器对html视图中的数据进行排序,因此在控制器中打印地图时看到的是原始数据。在您的情况下,最好的方法是在重复之前在控制器中对数据进行排序。甚至,如果您愿意,您也可以在控制器中注入
$filter
。@AayushiJain我希望数据按日期升序排列,但我无法实现它。