按字母顺序排序

mhdev:

我是Angular的新手,很抱歉,如果重复此问题,但找不到所需的答案。我有一个带有下一个JSON的文件:

   {"name": "John", "size" : "small"},
   {"name": "Rocky", "size" : "small"},
   {"name": "Angel", "size" : "small"},
   {"name": "Amber", "size" : "small"},
   {"name": "Sam", "size" : "small"}

我想创建一个管道,以便显示名称,但按字母顺序显示。看起来应该像这样:

琥珀天使约翰·洛基山姆

也许...除了使用管道,还有其他方法吗?

非常感谢

Adithya Sreyaj:

如果要创建管道来执行此操作,请遵循以下代码:

import { Pipe, PipeTransform } from "@angular/core";

@Pipe({
  name: "nameConcat"
})
export class NamePipe implements Pipetransform {
  transform(value: any[], ...args: any[]) {
    const sorted = [...value].sort((a, b) => (a.name > b.name ? 1 : -1));
    return sorted.map((item) => item.name).join(" ");
  }
}

并像这样使用它:

<p>{{data | nameConcat}}</p>

这是一个codeandbox:https://codesandbox.io/s/stupefied-bash-remov fontsize = 14& hidenavigation = 1& theme = dark

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章