我使用Onymos作为我的后端.当我从onymos中提取数据时,它给了我一个“Arrange by”属性,我可以在其中指定“createdTime”作为值,但是,由于某种原因,这不会转移到我的模板.我不认为我的谷歌搜索中不再有角度指令.所以我不确定我还能在模板中订购这个.
我的服务将一个数组传递给一个回调函数,该函数在主TS页面的contstructor中触发.
我对此表示赏心悦目,因为有人提供的第一个解决方案对我不起作用..导致错误.
Home.html中
<ion-card id="card" *ngFor="let event of listOfEvents" >
<ion-row id="row1">
<ion-col>
<span class="showDetails">Date:</span>
{{getFormattedTime(event.eventTime, 'MM-dd-yyyy')}}
</ion-col>
<ion-col>
<span class="showDetails">Time:</span>
{{getFormattedTime(event.eventTime, 'HH:MM')}}
</ion-col>
<ion-col>
<span class="showDetails">Venue:</span>
{{event.venue}}
</ion-col>
</ion-row>
</ion-card>
MyService.TS
getPosts (selectedCity, successCallback, failureCallback) {
OnymosUtil.getData(
'/events/' + selectedCity,
function getPostsSuccess (listOfEventsObject){
successCallback(listOfEventsObject);
},//close function getPostSuccess
function getPostsFailure (error) {
failureCallback(error);
},
{
orderByField: 'createdTime', //OrderByField not working
limitToFirst: 100
});
}//end getPosts
HOME.TS
export class Home {
listOfEvents: Array<any> = [];
postEvent: any;
constructor (public navCtrl: NavController,
public popoverCtrl: PopoverController,
public getPostSrvc: getPostsService) {
this.listOfEvents = [];
let that = this;
this.getPostSrvc.getPosts(
this.selectedCity,
function getPostsSuccess (listOfEventsObject) {
for (var i in listOfEventsObject) {
that.listOfEvents.push(listOfEventsObject[i]);
}
},
function getPostsFailure (error) {
console.log('ERROR : home.ts : Failed retrieving Posts - ' + error);
});
}//close constructor
}//close class
最佳答案 只需对客户端进行排序:
function successCallback (listOfEventsObject) {
for (var x in listOfEventsObject) {
that.listOfEvents.push(listOfEventsObject[x]);
}
// sort
that.listOfEvents = that.listOfEvents.sort(function(a, b) {
return a.createdTime - b.createdTime;
// or vice versa
// or any other way you wish to sort
});
}