Javascript 如何按React中的组件排序
我正在渲染一个显示数组的组件,并希望它们按最后一个条目排序 我曾尝试在渲染器外部执行一个函数,并将其包含在组件中,但安装不正确Javascript 如何按React中的组件排序,javascript,reactjs,jsx,Javascript,Reactjs,Jsx,我正在渲染一个显示数组的组件,并希望它们按最后一个条目排序 我曾尝试在渲染器外部执行一个函数,并将其包含在组件中,但安装不正确 orderBy() { let data = this.state; data.data.sort((a, b) => { return a.published_on - b.published_on }).map((data) => { return data; }) } render() { co
orderBy() {
let data = this.state;
data.data.sort((a, b) => {
return a.published_on - b.published_on
}).map((data) => {
return data;
})
}
render() {
const { loading, data } = this.state;
return (
<div className="list">
<Table rowKey="ref" loading={loading} dataSource={data.data} size="large" />
</div>
);
}
orderBy(){
让data=this.state;
data.data.sort((a,b)=>{
返回a.published_on-b.published_on
}).map((数据)=>{
返回数据;
})
}
render(){
const{loading,data}=this.state;
返回(
);
}
我希望表组件在加载时按data.data.published_on排序
在React中,正确的方法是什么?1)您没有从函数返回任何内容
2) 由于您使用的是类组件,因此需要使用this.orderBy
3) 不要从状态中获取数据,而是将其传递到函数中:
orderBy(data) {
return data.sort((a, b) => a.published_on - b.published_on);
}
render() {
const { loading, data } = this.state;
return (
<div className="list">
<Table rowKey="ref" loading={loading} dataSource={this.orderBy(data.data)} size="large" />
</div>
);
}
orderBy(数据){
返回data.sort((a,b)=>a.published\u on-b.published\u on);
}
render(){
const{loading,data}=this.state;
返回(
);
}
“我尝试在呈现该orderBy之外执行一个函数”:您应该将其添加到您的问题中。@Andy我已经添加了该函数,您如何调用orderBy
?当我在表中调用时遇到问题,页面不会加载该技巧,只需要在orderBy函数中将数据声明为数组,就可以了