私は多くのAPIサービスを呼び出すことができるので、これらのサービスには減速機を何台も書く必要があります。下に示すように減速機の作成者を実装する方法はありますか?明示的な実装以下に相当することができReact with ReduxプロジェクトでAPIサービスコールのダイナミックリデューサクリエータを実装する方法は?
const PENDING = 'PENDING'
const REJECTED = 'REJECTED'
const FULFILLED = 'FULFILLED'
const COMPANIES = 'COMPANIES'
let createReducer = (name) => (state, action) => {
switch (action.type) {
case name + '_' + PENDING:
return {...state,
isLoading: false
}
case name + '_' + FULFILLED:
return {...state,
companies: action.payload,
isLoading: false
}
case name + '_' + REJECTED:
return {...state,
isLoading: false,
err: action.payload
}
default:
return state
}
}
let comapnyReducer = createReducer(COMPANIES)
:この例の
const comapnyReducer = (state={isLoading: false}, action) => {
switch (action.type) {
case 'COMPANIES_PENDING':
return {...state,
isLoading: false
}
case 'COMPANIES_FULFILLED':
return {...state,
companies: action.payload,
isLoading: false
}
case 'COMPANIES_REJECTED':
return {...state,
isLoading: false,
err: action.payload
}
default:
return state
}
}
どのように私は見ての通りの状態が出力 –