我试图在使用ReactJS点击时反转此类:
if (this.state.Prz==3) {
this.props.files.sort(function(a,b){
return a.lastModified < b.lastModified ? 1 : -1;
});
}
我在Google上尝试了许多技巧,但我仍然陷入困境。
答案 0 :(得分:0)
只需调用reverse
即可反转数组this.props.files.reverse()
请注意,这会改变原始数组。
答案 1 :(得分:0)
您可以通过交换Date
和1
来更改排序方向(因为您似乎按-1
排序):
this.props.files.sort(function(a,b){
return a.lastModified < b.lastModified ? -1 : 1;
});
或者您可以反转数组,假设它在执行之前已经排序(concat()
用于制作数组的副本,保持“不可变”):
this.props.files.concat().reverse();
答案 2 :(得分:0)
最后我是怎么做的。我添加一个条件。
if (this.state.activePrz==3) {
this.props.files.sort(function(a,b){
var asc = a.lastModified < b.lastModified;
var desc = a.lastModified > b.lastModified;
if(asc == true){
return asc;
}else{
return desc;
}
})
}
它有效。
我无法:
this.props.files.reverse();
或
this.props.files.concat().reverse();
错误消息是:
无法读取属性&#39;文件&#39;未定义的
非常感谢你的帮助。