我有一个角度树视图与节点街道,城市,州,国家。
State是Country的子节点,City是State的子节点,依此类推。此外,每个节点都有自己的子节点。
示例:德国、法国、瑞典、挪威是值在国家的节点。单击德国将显示柏林、巴伐利亚、萨尔兰等州,进一步选择巴伐利亚州将显示巴伐利亚州的城市,然后选择城市将显示其街道。
但是,我无法对这些国家、州、城市和街道的列表进行排序。
该名称存储在一个名为label的变量中。我使用以下代码对数组进行排序。:
getNames(id: string): Observable<Name[]> {
return this.httpClient
.get(
this.environmentService.endpoints.<<--insert url here-->
)
.pipe(
map((data: any) => {
data.sort((a, b) => {
return a.Name > b.Name ? 1 : -1
})
return data
})
) as Observable<Name[]>
}我对tree使用了类似的方法。
它会重新洗牌,但不会按字母顺序排序。
有没有办法按字母顺序对我的对象排序?
附言:我想在服务中对其进行排序,然后将其发送到组件
发布于 2019-02-21 04:12:51
你能展示更多你是如何排序的代码吗?您不需要使用管道映射,因为数组具有自己的本机排序函数。
sortFn(myArray: Array<any>, label: string) {
return myArray.sort((a, b) => {
if (a[label] < b[label]) return -1;
if (a[label] > b[label]) return 1;
return 0;
}
}https://stackoverflow.com/questions/54793526
复制相似问题