【发布时间】:2018-02-06 07:20:35
【问题描述】:
我正在制作一个简单的应用程序,用于从 TMDb 返回电影信息。我可以检索数据并按受欢迎程度和平均投票排序。
但是,我正在努力将其恢复为从 TMDb 检索到的原始订单。
这是我用来对数据进行排序的函数:
sortBy = (param) => {
let movies = [];
if(param.target.value === 'popularity'){
this.setState({sort:'popularity'})
movies = this.state.movies.sort((a,b) => {
return parseFloat(b.popularity) - parseFloat(a.popularity)
});
} else if (param.target.value === 'vote_average'){
this.setState({sort:'vote_average'})
movies = this.state.movies.sort((a,b) => {
return parseFloat(b.vote_average) - parseFloat(a.vote_average)
});
}
this.setState({
movies: movies
});
}
现在,如果我将“param.target.value”设置为“匹配”,我想恢复数据的原始顺序。这存储在 state.movies 中,但在函数结束时会更改。仅保留一些原始订单状态是最佳选择吗?
【问题讨论】:
-
添加您使用的数据...
-
为什么不直接在加载时排序(例如按日期)并使用排序功能返回原始状态?
标签: javascript json reactjs