1
我想为angular 2创建一个管道,使用它在我的html中正确使用它,但是每次使用它时array.sort都被当作属性读取。该错误是无法读取属性未定义“排序”这里是我管的代码Angular 2 - Pipesorting - 正确的语法
import { Pipe, PipeTransform } from "@angular/core";
import { Player } from './player';
@Pipe({
name: "arraysorting",
pure:false,
})
export class LeaderboardSortPipe implements PipeTransform {
transform(array: Array<Player>, args: string): Array<Player> {
array.sort((a: Player, b: Player) => {
if (a[args] < b[args]) {
return -1;
} else if (a[args] > b[args]) {
return 1;
} else {
return 0;
}
});
return array;
}
}
编辑: 下面是该
<ul *ngIf="type!='' && amount==0" class="leaderboard">
<li *ngFor="let player of players | sort | slice:0; let i=index">
<span class="badge">{{player.id}}</span>{{player.name}}
<span *ngIf="type=='ratio'" class="points">{{player[type].toFixed(2)}} %</span>
<span *ngIf="type!='ratio'" class="points">{{player[type]}}</span>
</li>
</ul>
的排序顺序我的HTML代码并不重要的权利现在的问题是,它不是在任何方向都整理
当然是。否则,你不会得到那个错误。 –
请编辑你的问题,并在那里添加代码。评论中的代码是不可读的。你想如何分类他们? –