使用React Redux API删除请求删除帖子

9 浏览
0 Comments

使用React Redux API删除请求删除帖子

当我在控制台记录`this.props`时,我得到一个包含`post.id`的数组,我想要创建一个`onClick`函数,从列表中删除该项,并且不在页面上显示。我的代码有什么问题吗?

这是我的代码:

导出删除帖子的函数:

export const deletePost = id => dispatch => {
  fetch(`https://jsonplaceholder.typicode.com/posts/${id}`, {
    method: "DELETE"
  })
    .then(res => res.json())
    .then(post =>
      dispatch({
        type: DELETE_POST,
        payload: id
      }),
    );
};

我的reducer:

const initialState = {
  items: [],
  item: {}
};
case FETCH_POSTS:
  return {
    ...state,
    items: action.payload
  };
case DELETE_POST:
  return {
    ...state,
    items: action.payload
  };

组件包含以下内容:

const mapStateToProps = state => ({
  posts: state.postsReducer.items,
});
const mapDispatchToProps = {
  fetchPosts, deletePost
}

每个帖子上有一个删除按钮:


0