Reactjs 无法使用redux observable和typescript发布请求

Reactjs 无法使用redux observable和typescript发布请求,reactjs,typescript,redux-observable,Reactjs,Typescript,Redux Observable,我正在尝试使用Redux、Redux observable和Typescript在React中执行POST请求。(这是我第一次使用redux observable和Typescript,只是为了让你们知道我来自哪里…)我无法让epic正常工作,它一直显示一个Typescript错误。 我被困在这里好几个小时了。。。求你了,我需要帮助 在使用Axios功能之前,一切正常。见下面的代码: const locationEpic:Epic=action$=> 动作$.pipe( 过滤器(isAction

我正在尝试使用Redux、Redux observable和Typescript在React中执行POST请求。(这是我第一次使用redux observable和Typescript,只是为了让你们知道我来自哪里…)我无法让epic正常工作,它一直显示一个Typescript错误。 我被困在这里好几个小时了。。。求你了,我需要帮助

在使用Axios功能之前,一切正常。见下面的代码:

const locationEpic:Epic=action$=>
动作$.pipe(
过滤器(isActionOf(actions.setLocation)),
映射(操作=>{
const{payload}=动作;
返回{type:LOCATION_SET,payload}
}
));
邮政请求的Axios:

接口位置状态{
路径:字符串;
名称:字符串;
}
界面轴向响应{
数据:位置状态;
}
const postData=(数据:任意)=>{
返回axios.post(baseURL,数据)
。然后((res:any)=>{
console.log('post',res.data);
})
.catch((错误:任意)=>{
控制台错误(err);
});
};
有问题的史诗:

const locationEpic:Epic=action$=>
动作$.pipe(
过滤器(isActionOf(actions.setLocation)),
开关映射(操作=>
from(postData(action.payload)).pipe(
映射(actions.setLocation(action.payload)
))
));
我不断地发现这个错误:

类型“Observable”不可分配给类型“Observable”。输入“未知” 不可分配给类型“{type:”@@location/SET”;有效负载: LocationState;}

你的map()看起来不对劲,它应该是一个函数,你给它一个action对象。应该是
map(response=>actions.setLocation())
。另外,您正在映射到epic正在处理的同一个动作,因此这将导致一个无限循环,我猜这不是您想要的。您的map()看起来不正确,它应该是一个函数,您正在给它一个动作对象。应该是
map(response=>actions.setLocation())
。另外,您正在映射到epic正在处理的相同动作,因此这将导致一个无限循环,我猜这不是您想要的。