Javascript 在React Redux中对数据进行排序
我正在尝试创建一个排序按钮,当我将排序菜单添加到菜单框并将排序功能添加到主容器中的mapStateToProps后,我的数据(菜单)将按字母顺序排序,我的问题是实现此按钮的最简单方法是什么,单击此按钮将对数据进行排序?我需要为这个按钮创建一个新组件吗?或者我可以在我的容器中做些什么吗 容器:Javascript 在React Redux中对数据进行排序,javascript,reactjs,react-redux,Javascript,Reactjs,React Redux,我正在尝试创建一个排序按钮,当我将排序菜单添加到菜单框并将排序功能添加到主容器中的mapStateToProps后,我的数据(菜单)将按字母顺序排序,我的问题是实现此按钮的最简单方法是什么,单击此按钮将对数据进行排序?我需要为这个按钮创建一个新组件吗?或者我可以在我的容器中做些什么吗 容器: class DataContainer extends Component { displayCards = () => { switch(this.props.path) { ca
class DataContainer extends Component {
displayCards = () => {
switch(this.props.path) {
case "menus":
return (this.props.sort_menus.map(card => (
<NavLink style={{ color: "black" }} to={`/menus/${card.id}`} key={card.id}><MenuCard view={this.props.displayObject} info={card} /></NavLink>
)));
default:
return (<div>Empty</div>)
}
};
render() {
return (
<CardColumns>
{this.displayCards()}
</CardColumns>
)
}
}
const mapStateToProps = state => {
return {
sort_menus: state.menus.cards.sort(function(menu1, menu2) {
if (menu1.name < menu2.name) {
return -1;
}
if (menu1.name > menu2.name) {
return 1;
}
})
}
};
类数据容器扩展组件{
显示卡=()=>{
开关(此.props.path){
案例“菜单”:
return(this.props.sort_menus.map(card=>(
)));
违约:
返回(空)
}
};
render(){
返回(
{this.displayCards()}
)
}
}
常量mapStateToProps=状态=>{
返回{
排序\菜单:状态。菜单。卡片。排序(功能(菜单1,菜单2){
if(menu1.namemenu2.name){
返回1;
}
})
}
};
最好有一个记忆选择器来对项目进行排序。
检查redux文档我不希望使用redux进行此操作,因为这不是挑战的一部分。