我正在从服务器获得响应,但是,我必须显示数据的最后5个索引。因此,我尝试使用某些逻辑,例如索引大于4,然后进行过滤。 ReturnsData 有响应。
但是,数据并不总是持久的,有时数据只是1或2个索引,所以,我的逻辑出错了,UI显示为空,甚至我试图在其他条件下设置本机条件,但是,没有任何效果。
someAction = () => {
let lastFiveYearsData = [];
if (ReturnsData.length > 4) {
lastFiveYearsData = ReturnsData.sort((a, b) => a.year - b.year);
filteredArray = lastFiveYearsData.slice(Math.max(lastFiveYearsData.length - 5, 1));
} else {
this.filteredArray = ReturnsData;
}
filteredArray.map((item, index) => {
//do some work here
}
}
console.log ('filteredArray', filteredArray)
filteredArray 显示未定义 甚至我尝试了设置状态不起作用并显示未定义的 filteredArray ,这是全局定义的。
该如何解决?
答案 0 :(得分:0)
在您的else
条件下,您是将数据分配给this.filteredArray
而不是filteredArray
。