【发布时间】:2022-01-28 03:08:12
【问题描述】:
所以我正在制作一个简单的 CRUD 应用程序,试图让自己熟悉 redux。基本上我正在从表单传输数据并向服务器发送帖子请求以创建新的博客帖子(或多或少)。这是 onSubmit 的代码:
const handleSubmit = (e) => {
e.preventDefault()
dispatch(createPost(postData));
}
这里是被调度的动作和错误的来源(src/actions/posts.js):
export const createPost = (post) => async (dispatch) => {
try
{
const { data } = await api.createPost(post);
dispatch({ type: "CREATE", payload: data});
}
catch (error)
{
console.log(error.message);
}
}
此函数无法从 api 的响应中解构数据,因为响应未定义。下面是从 src/api/index.js 发送请求的代码:
export const createPost = (newPost) => {
axios.post(url, newPost);
}
当我使用 .then() 控制台记录此函数的响应时,它会返回 201 以及对成功请求的期望。所以响应返回 201 并且条目被添加到数据库中,但是我的操作函数无法从响应中解构数据,因为它是未定义的。我的愚蠢错误是什么?
【问题讨论】:
标签: javascript reactjs post redux axios