export const addTeamReview = createAsyncThunk(
"team/addTeamReview",
async (teamId, comment, { getState }) => {
const {
userLogin: { userInfo },
} = getState();
try {
await axios.post(`/api/teams/${teamId}/review`, comment, {
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${userInfo.token}`,
},
});
} catch (error) {
console.log(error);
}
}
);
在这段代码中,我不能把{getState}
作为第二个参数,当我们有多个参数时,我不知道该怎么做
我试着把getState放在第二个,把comment对象放在第三个,但是不起作用。另外,我试着在一个对象中传递teamId和comment,但是也不起作用
1条答案
按热度按时间9o685dep1#
如果你想发送多个参数到你的asyncThunk,把它们放在一个对象中。你可以在这里阅读更多关于asyncThunk参数的信息
我将在这里为您重点介绍重要的部分
arg:单个值,包含在调度thunk操作创建者时传递给该创建者的第一个参数。这对于传递请求中可能需要的项ID等值非常有用。如果需要传递多个值,请在调度thunk时将它们一起传递到一个对象中,如dispatch(fetchUsers({status:'活动',排序依据:'名称'}))