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

RxJS subscribe已弃用,VS Code中显示删除线,求正确替代用法

解决RxJS中subscribe方法被标记为废弃的问题

问题原因

RxJS 已废弃 subscribe 方法接收多个独立回调函数的重载形式,因此你看到了删除线提示。目前官方推荐使用配置对象的方式传入 next、error、complete 处理函数。

替代写法

将原来的多个回调函数,替换为传入一个包含对应处理函数的对象:

修改后的完整代码

obtenerProductos() {
  this.productoService.getProductos().subscribe({
    next: (data) => {
      console.log(data);
    },
    error: (error) => {
      console.log(error);
    }
    // 若需处理请求完成事件,可添加complete属性
    // complete: () => {
    //   console.log('请求已完成');
    // }
  });
}

额外优化建议

如果你的场景是在模板中展示异步数据,可使用 Angular 的 async 管道,它会自动管理订阅与取消订阅,避免内存泄漏:

<!-- 模板中使用async管道示例 -->
<div *ngFor="let producto of productoService.getProductos() | async">
  {{ producto.nombre }}
</div>

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 16:14:56