我有一个表视图中的对象列表,我想正确排序。AngularJS - 对字符串进行排序 - 重复其中的数字
除其他事项外,我的对象包含名称字段。此名称字段也可以包含数字,因此,例如: Chairman Seat 1 Seat 2 Seat 3 Seat 11 Seat 12 Seat 23 Secretary
但是,这是排序是这样的: Chairman Seat 1 Seat 11 Seat 12 Seat 2 Seat 23 Seat 3 Secretary
这似乎并不像按名称排序时排序我的名单自然的方式。
现在,我使用的NG-重复这样的: seat in seats | orderBy:orderField:orderReverse track by seat.id
哪里orderfield
一些变量是点击表头时设置和orderReverse
太扭转。
我试图使自定义过滤器,以确保其行为正常,但我失败了。看起来,Javascript只是不会正常排序,除非我打破了字符串。但我宁愿不是因为数据经常通过轮询更新。另一种方法是强制引导零,但因为用户手动输入这些东西,我不知道我是否应该。
而且,它与一些数字不仅名字,所以我不能只是完全切断他们
那么,如何使这个名单显示通常有什么建议?
编辑:清理有关该问题的一些信息。
你应该写自己的排序功能。 – dfsq 2014-09-10 13:35:52
搜索“自然排序”。 – Blackhole 2014-09-10 13:42:33
@dfsq我可以做到这一点,但我怎么会知道与数字和没有区别。我将如何给他们正确的顺序? – Martinspire 2014-09-10 14:23:18