1 回答
TA贡献1936条经验 获得超7个赞
您可以先简化代码,如下所示。更新/打印console.log(JSON.stringify(payload))。我认为if(problemsSolved.includes(problems[i]._id))没有按预期工作
export const setStatistics = (
problems,
problemsSolved,
filter = ""
) => dispatch => {
let payload = {
subject1: 0,
subject2: 0,
subject3: 0,
total: 0,
exercisesMarked: [],
curPageExercisesMarked: []
};
for (let i = 0; i < problems.length; i++) {
if(problemsSolved.includes(problems[i]._id)) {
payload["subject"+ problems[i].S]++
payload.total++;
payload.exercisesMarked.push(problems[i]);
}
}
payload.curPageExercisesMarked = payload.exercisesMarked.slice(0, 10);
dispatch({
type: SET_USER_STATISTICS,
payload
});
};
// 还
case SET_USER_STATISTICS:
return {
...state,
...payload
};
添加回答
举报
