Javascript 使用带空格的JSON键进行AngularJS排序
我通过AngularJS应用程序调用API,该API以以下格式返回JSON:Javascript 使用带空格的JSON键进行AngularJS排序,javascript,json,angularjs,Javascript,Json,Angularjs,我通过AngularJS应用程序调用API,该API以以下格式返回JSON: [Object, Object] 0: Object $$hashKey: "01" Contact Name: "Michae" Phone Number: "2000000000000" 如图所示,JSON中的键有空格,因此我在我的应用程序模板中使用了以下代码来显示JSON内容: <select ng-model ="sortorder"> <option selected value="{
[Object, Object]
0: Object
$$hashKey: "01"
Contact Name: "Michae"
Phone Number: "2000000000000"
如图所示,JSON中的键有空格,因此我在我的应用程序模板中使用了以下代码来显示JSON内容:
<select ng-model ="sortorder">
<option selected value="{{contacts['Contact Name']}}">Name</option>
<option selected value="{{contacts['Phone Number']}}">Contact Name</option>
</select>
<br><br><br>
<div ng-repeat="contacts in mContactsList | orderBy:sortorder">
<p>Contact Name: {{contacts['Contact Name']}}</p><br>
<p>Phone: {{contacts['Phone Number']}}</p><br>
</div>
名称
联系人姓名
联系人姓名:{{contacts['Contact Name']}}
电话:{{联系人['Phone Number']}
在控制器中,我尝试使用:
$scope.sortorder='Contact Name';
及
$scope.sortorder={{contacts[\'Contact Name\']}}}
但是没有一个有效
我现在遇到的问题是,排序根本不起作用,所以有人能帮我指出我到底做错了什么/遗漏了什么吗?任何例子都值得高度赞赏
如果您要定义自定义的
orderBy
,请多谢。请记住,它将使用当前重复的联系人作为参数。尝试:
$scope.sortorder = function (contact) {
return contact["Contact Name"];
}
- 数组:是需要排序的数组
- 谓词:是属性。它可以有空格和特殊字符
- 反向:是否要按反向顺序排序
非常感谢您的帮助
var orderBy = $filter('orderBy');
array = orderBy(array, function(row){return row[predicate]}, reverse);