第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

JavaScript,Redux:數(shù)組沒(méi)有價(jià)值

JavaScript,Redux:數(shù)組沒(méi)有價(jià)值

飲歌長(zhǎng)嘯 2022-05-26 17:51:41
我正在嘗試為使用 Redux 操作的用戶獲取一些統(tǒng)計(jì)信息和問(wèn)題,并將其傳遞給 React 組件。問(wèn)題是,我有一個(gè) objects 數(shù)組,curPageExercisesMarked用于頁(yè)面的分頁(yè),但它不采用我分配給它的值。奇怪的是 Redux 商店中的其他字段得到了更新,但沒(méi)有這個(gè)。我嘗試在動(dòng)作中安慰對(duì)象,但它只是打印這個(gè):重要的是要提到我在另一個(gè)動(dòng)作中做類似的事情,使用完全相同的分配,它在那里工作。我已經(jīng)失去了一個(gè)小時(shí)試圖弄清楚這件事,所以歡迎任何幫助。Redux 操作: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 (problems[i].S === '1' && problemsSolved.includes(problems[i]._id)) {   payload.subject1++;   payload.total++;   payload.exercisesMarked.push(problems[i]);  } else if (   problems[i].S === '2' &&   problemsSolved.includes(problems[i]._id)  ) {   payload.subject2++;   payload.total++;   payload.exercisesMarked.push(problems[i]);  } else if (   problems[i].S === '3' &&   problemsSolved.includes(problems[i]._id)  ) {   payload.subject3++;   payload.total++;   payload.exercisesMarked.push(problems[i]);  } } payload.curPageExercisesMarked = payload.exercisesMarked.slice(0, 10); dispatch({  type: SET_USER_STATISTICS,  payload });};redux 減速器:export default function(state = initialState, action) {const { type, payload } = action;switch (type) {case SET_USER_STATISTICS:  return {    ...state,    exercisesMarked: payload.exercisesMarked,    curPageExercisesMarked: payload.curPageExercisesMarked,    subject1: payload.subject1,    subject2: payload.subject2,    subject3: payload.subject3,    total: payload.total  }; case CHANGE_PAGE_MARKED:  return {    ...state,    page: payload,    curPageExercisesMarked: state.exercisesMarked.slice(      (payload - 1) * state.pages_count,      payload * state.pages_count    )  }; default:  return state; }}這是不起作用的部分: payload.curPageExercisesMarked = payload.exercisesMarked.slice(0, 10);
查看完整描述

1 回答

?
LEATH

TA貢獻(xiàn)1936條經(jīng)驗(yàn) 獲得超7個(gè)贊

您可以先簡(jiǎn)化代碼,如下所示。更新/打印console.log(JSON.stringify(payload))。我認(rèn)為if(problemsSolved.includes(problems[i]._id))沒(méi)有按預(yù)期工作


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

  };


查看完整回答
反對(duì) 回復(fù) 2022-05-26
  • 1 回答
  • 0 關(guān)注
  • 123 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)