In TypeScript application i set array of objects and show it to user in my template
feedList: News[] =
[
{ type: 1, slug: 'news', date: '2018/04/30', title: 'Header New', content: 'Lorem ipsum dolor sit amet'},
{ type: 2, slug: 'post', date: '2018/04/20', title: 'Header New', content: 'Lorem ipsum dolor sit amet' },
{ type: 1, slug: 'news', date: '2018/04/28', title: 'Header New', content: 'Lorem ipsum dolor sit amet' },
{ type: 1, slug: 'news', date: '2016/04/28', title: 'Header New', content: 'Lorem ipsum dolor sit amet' },
{ type: 2, slug: 'post', date: '2018/03/28', title: 'Header New', content: 'Lorem ipsum dolor sit amet' }
];
I have a function of sorting
sortByType(feedList: News[]): void {
feedList.sort(function(a, b) {
return a.type - b.type;
});
}
And I calling it in template
%button.btn{(click)="sortByType(this.feedList)"} Sort
But there is no changes and to errors. What I doing wrong?
If I use simply
[#objectarray#].sort(function(a, b) {
return a.type - b.type;
});
— it works
upd: all template
.feed
%button.btn{(click)="sortByType(this.feedList)"}
Sort by type
.f-item{*ngFor: "let feedItem of feedList", class: "{{feedItem.slug}}"}
.type
{{feedItem.type}} {{feedItem.slug}}
.date
{{feedItem.date}}
tar{key: value, but i used=