use*_*410 0 reactjs redux react-redux
我想知道我是否有一些类似的行动
.then((res) => {
dispatch({
type: FETCH_DATA_SUCCESS,
payload: res
})
})
Run Code Online (Sandbox Code Playgroud)
在我的减速器中,我想用动作有效负载改变状态。所以在本例中它是来自 api 的响应。以及状态中的一些值,例如。isLoading: false 与 isLoading:true
在我的减速器中如下:
let initialState = [{
isLoading: false,
}]
export default (state = initialState, action) => {
switch (action.type) {
case FETCH_DATA_START:
return [...state]
case FETCH_DATA_SUCCESS:
return [...state, ...action.payload]
case FETCH_DATA_FAILED:
return [state]
default:
return state
}
}
Run Code Online (Sandbox Code Playgroud)
以下是在FETCH_DATA_SUCCESS 操作负载和 isLoading: true 情况下如何分配。
所以最后我想让我的状态像这样:
State = [{
isLoading: true,
items: [{}] // items is coming from response of fetch call
}]
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
Object如果您的状态是 a而不是,那就更容易了Array。在你的减速器中尝试一下:
let initialState = {
isLoading: false,
error: null,
}
export default (state = initialState, action) => {
switch (action.type) {
case FETCH_DATA_START:
return { ...state, isLoading: true }
case FETCH_DATA_SUCCESS:
return { ...state, items: ...action.payload, isLoading: false }
case FETCH_DATA_FAILED:
return { ...state, error: ...action.payload, isLoading: false }
default:
return state
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1567 次 |
| 最近记录: |