Javascript orderBy不在带有破折号的对象名的angularjs中工作

Javascript orderBy不在带有破折号的对象名的angularjs中工作,javascript,angularjs,Javascript,Angularjs,我试图按升序对对象开始日期中的一些日期进行排序。根据一些消息来源,如果有破折号,这似乎不起作用 data-ng:repeat="medicationItem in medication | orderBy:['start-date','name']"> 我首先尝试按日期排序,然后按字母表排序。我有没有做错什么 感谢您的高级支持。对于名称中带有连字符的对象的属性,我也遇到了类似的问题。因此,在Angular中适用于大多数情况的用户['first-name']将不适用于过滤器。以便您获得or

我试图按升序对对象开始日期中的一些日期进行排序。根据一些消息来源,如果有破折号,这似乎不起作用

data-ng:repeat="medicationItem in medication | orderBy:['start-date','name']">
我首先尝试按日期排序,然后按字母表排序。我有没有做错什么


感谢您的高级支持。

对于名称中带有连字符的对象的属性,我也遇到了类似的问题。因此,在Angular中适用于大多数情况的用户['first-name']将不适用于过滤器。以便您获得orderBy for start date开始工作。它需要看起来像orderBy:['startDate','name'],medicationItem必须有一个属性medicationItem。startDate

最简单的方法是,用UTF8代码将字段名括起来作为引号:

HTML

<li ng-repeat="item in items | orderBy:'\u0022Dashed-Key\u0022'">

什么是药物治疗?一个对象还是一个数组?我不明白为什么,但这对我很有用。也许可以解释一下?
$scope.orderKey = '\u0022Dashed-Key\u0022';