Использовать пользовательское промежуточное ПО для асинхронных действий - PullRequest
0 голосов
/ 24 ноября 2018

Я не знаю, почему этот вызывает у меня проблемы.я отправил много громов, и это должно было быть просто.

это мой магазин:

import { createStore, applyMiddleware } from 'redux';
import thunk from 'redux-thunk';
import rootReducer from './reducers';
import logger from 'redux-logger';
import CircularJSON from 'circular-json';

let store;

const persistedState = localStorage.getItem('storeState') ?
                      JSON.parse(localStorage.getItem('storeState')):
                      {}

store = 
createStore(rootReducer,persistedState,applyMiddleware(thunk,logger));

это создатель действия:

export async function fetchSrcContorlTrendChartData(){ 
 return async (dispatch)=>{
   let data = await getChartsData();
   dispatch({type:C.FETCH_SRC_CONTROL_TREND_CHART_DATA,payload:data})
  }
}//fetchS

это функция grtChartsData:

export function getChartsData(){
  return {
    "labels": 
  ['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec'],
  "gitActiveReposByMonth":[1,4,6,7,7,7,9,10,24,56,45,23],
  "TFVCActiveReposByMonth":[23,18,15,15,15,6,17,12,23,12,8,3],
  }; 
 }//getChartsData

любая помощь будет большой спасибо

1 Ответ

0 голосов
/ 26 ноября 2018

Я прочитал ваш код, но я не мог понять, с какой именно проблемой вы сталкиваетесь или как код, который вы показали, связан с пользовательским промежуточным программным обеспечением?

Единственная проблема, которую я вижу, это то, что выВызываете не асинхронную функцию getChartsData () с await, и вам не нужно

. Вы можете изменить ее на

export function fetchSrcContorlTrendChartData() {
    return (dispatch)=>{
        let data = getChartsData();
        dispatch({type:C.FETCH_SRC_CONTROL_TREND_CHART_DATA,
           payload:data
        })
    }
}//fetchS

, но даже лучше, если вы на самом деле этого не делаетенужен вообще тхан

export function fetchSrcContorlTrendChartData() {
    return {
        type: C.FETCH_SRC_CONTROL_TREND_CHART_DATA,
        payload: getChartsData();
    }
}
...