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

TypeScript中如何正确获取方法返回的IBasket类型值

问题原因

你当前的写法是把getCurrentBasketValue这个函数本身赋值给了basket变量,没有执行该函数,所以得到的类型是函数类型() => IBasket,而非函数返回的IBasket类型。

解决方法

调用函数时补充小括号触发函数执行即可,修改后的代码如下:

const basket = this.getCurrentBasketValue();

加上小括号后会执行函数拿到返回结果,此时basket的类型就会自动匹配为你需要的IBasket类型。

额外说明

  • 你初始化BehaviorSubject时传入的是null,如果IBasket接口未定义允许null值,建议调整初始化参数,或者在使用返回值前添加空值判断,避免运行时报错。
  • 如果你需要监听购物车的动态变化,更推荐订阅basketSource对应的Observable流,而非直接取静态的value值。

内容的提问来源于stack exchange,提问作者Fahad Mughal

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 07:09:03