angularjs使用ng-repeat遍历map顺序会乱掉,有没有类似linkedhashmap

TJkaklf 2018-07-23 03:40:42
问题如题

<table >
<tr >
<td ng-repeat="(key,value) in list[0]">{{key}}</td>
</tr>
<tr ng-repeat="map in list">
<td ng-repeat="(x,y) in map">{{y || " "}}</td>
</tr>
</table>

遍历出来的结果和我后台传过来的不一样.遍历前的json格式字符串顺序是不变的,使用ng-repeat中的map顺序就乱了
...全文
542 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
讨厌走开啦 2018-07-23
  • 打赏
  • 举报
回复
我没记错的话,1.4.x版本,ng-repeat的map(其实遍历对象就会按对象的属性名自动排序)默认是会自动排序的,不知道你用的是哪个版本,解决方法有2个:

1.升级版本(貌似这算是一个原生的bug,据说在后续版本已经修复了);
2.自己把对象转成list以后再用ng-repeat遍历。
ambit_tsai-微信 2018-07-23
  • 打赏
  • 举报
回复
引用 1 楼 ambit_tsai-微信的回复:
ES6新增的Map对象是有序的,解析json字符串时,转成Map对象试试
或者直接转成数组也可以
ambit_tsai-微信 2018-07-23
  • 打赏
  • 举报
回复
ES6新增的Map对象是有序的,解析json字符串时,转成Map对象试试

87,902

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧