Typescript &引用;对象的类型为';未知'&引用;在RxJS操作中
我有一个如下的源代码,我不知道为什么我在第143行出错,但在第137行我没有得到这样的错误。你知道如何确保第143行的类型是正确的吗?也许我应该添加一些类型,如果是,在哪里 我还以纯文本形式插入源代码:Typescript &引用;对象的类型为';未知'&引用;在RxJS操作中,typescript,rxjs,Typescript,Rxjs,我有一个如下的源代码,我不知道为什么我在第143行出错,但在第137行我没有得到这样的错误。你知道如何确保第143行的类型是正确的吗?也许我应该添加一些类型,如果是,在哪里 我还以纯文本形式插入源代码: exhaustMap(action => // call asyncProcess() and delay until promise is fulfilled components .deleteComponent(action.payload.id, action.p
exhaustMap(action =>
// call asyncProcess() and delay until promise is fulfilled
components
.deleteComponent(action.payload.id, action.payload.projects, action.payload.useCases)
.pipe(
// map promise result to success action
mergeMap(() => {
filterAction(deleteComponentAction.request),
mergeMap(action =>
components.deleteComponent(action.payload.id).pipe(
mergeMap(() => of(deleteComponentAction.success(), fetchCategoryComponentList.request({category: "gateway"}))),
catchError((error: Error) => of(deleteComponentAction.failure(errorHandler(error))))
)
)
}),
这是一个不确定的结果,因为我不知道您的函数返回什么,但请尝试一下,让我知道它是如何运行的:
exhaustMap(action =>
// call asyncProcess() and delay until promise is fulfilled
components
.deleteComponent(action.payload.id, action.payload.projects, action.payload.useCases)
.pipe(
// map promise result to success action
mergeMap((deleteComponentAction: CorrectTypeHere) => {
filterAction(deleteComponentAction.request),
mergeMap((filterAction: CorrectTypeHere )=>
components.deleteComponent(filterAction.payload.id).pipe(
mergeMap((deleteComponentAction: CorrectTypeHere) => of(deleteComponentAction.success(), fetchCategoryComponentList.request({category: "gateway"}))),
catchError((error: Error) => of(deleteComponentAction.failure(errorHandler(error))))
)
)
}),
我认为问题出在第140排。在这里放置一个
mergeMap
操作符,并以()=>{//do stuff}
的形式向其传递一个函数。这里的关键点是,在这个函数体的定义中使用了大括号
传递给
mergeMap
的函数必须返回一个可观察值,而使用大括号这一事实要求使用显式return
来定义返回值。但是,如果我查看函数体(第141-147行),我没有看到任何return
语句返回可观察到的值。这是您错误的根本原因。然后,我不清楚您想用第137行的mergeMap
实现什么,但是,无论您想做什么,请确保您确实返回了一个可观察的对象。mergeMap的项目函数至少需要一个参数:,所以请尝试mergeMap(x=>{
我尝试过,但不起作用。-(好的。action
是什么类型?deleteComponent()
返回什么?