2017-02-25 6 views
0

私は現在reduxで働いています、私はちょうど他のページのためのほとんど同じ機能に遭遇しています唯一の違いはmethod.howで使用しているサービスです控えめでDRY。Reduxアクションの作成者は、わずかに同じ全体の異なるページ

私は、異なるページにcombineReducerとルータを使用しています。

例: で - に

export function fetchInsuranceCompanies() { 
return (dispatch, getState) => { 
     const state = getState(); 
     dispatch({ type: LOADING }); 
     InsuranceCompany.paginate(state.dataTable.tableFilter).then(
      (response) => dispatch(setInsuranceCompanies(response.data)) 
     ); 
    }; 
} 

InsuranceCompanyIndex.js

- あなたは今、毎回あなたがfetchInsuranceDatを呼び出し、この

export function fetchInsuranceData(InsuranceData,setInsuranceData) { 
    return (dispatch, getState) => { 
     const state = getState(); 
     dispatch({ type: LOADING}); 
     InsuranceData.paginate(state.dataTable.tableFilter).then(
      (response) => dispatch(setInsuranceData(response.data)) 
     ); 
    }; 
} 

のようにクロージャを使用することができますInsuranceCompanyLines.js

export function fetchInsuranceLines() { 
    return (dispatch, getState) => { 
     const state = getState(); 
     dispatch({ type: LOADING }); 
     InsuranceLines.paginate(state.dataTable.tableFilter).then(
      (response) => dispatch(setInsuranceLines(response.data)) 
     ); 
    }; 
} 

答えて

1

、これらの2つの(InsuranceData、setInsuranceData)変数これらの2つの変数にアクセスできる関数を返します。

関連する問題