/***
* 排序函数
* @param data1 第n个数据
* @param data2 第n+1个数据
* @param key 对应的字段名
* @param key2 对应的字段名2,第二排序关键词
* @param direction 1 由小到大 -1 有大到小
* @returns {number}
*/
export const compareByField = (data1, data2, direction = 1, key, key2) => {
if (key) {
if (data1[key] < data2[key]) {
return -1 * direction
} else if (data1[key] > data2[key]) {
return 1 * direction
} else {
if (key2) {
if (data1[key2] < data2[key2]) {
return -1 * direction
} else if (data1[key2] > data2[key2]) {
return 1 * direction
} else {
return 0 * direction
}
} else {
return 0 * direction
}
}
} else {
if (data1 < data2) {
return -1 * direction
} else if (data1 > data2) {
return 1 * direction
} else {
return 0 * direction
}
}
}
@computed
get sortByTime() {
const time = this.searchType.time; //!==2是时间由早到晚 或由晚到早
return this.flight_list
.slice()
.sort((value1, value2) =>
compareByField(
value1,
value2,
time === 2 ? -1 : 1,
'departure_time',
'min_price'
)
)
}
sort排序
最新推荐文章于 2022-11-10 11:31:51 发布