You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何正确使用返回Promise的回调函数?解决TS类型报错

解决TS2345回调参数类型不匹配问题

错误原因

你调用paramsFactory时传入的getPageInfo({ page: 1 })会立即执行,返回的是一个Promise<void>对象,但paramsFactory的第二个参数要求的是一个返回Promise的函数(类型为() => Promise<void>),两者类型不匹配,因此触发TS2345错误。

正确调用方式

将getPageInfo的调用包裹在箭头函数中,传递符合类型要求的函数引用:

paramsFactory(params, () => getPageInfo({ page: 1 }))

这样当paramsFactory内部执行callback()时,才会调用getPageInfo并返回Promise,完全匹配回调参数的类型定义。

动态参数处理(可选)

如果需要传递动态参数给getPageInfo,可以在箭头函数中直接使用:

const targetPage = 2; // 动态页码
paramsFactory(params, () => getPageInfo({ page: targetPage }))

内容的提问来源于stack exchange,提问作者stanislav kim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 20:45:57