模块“rxjs”没有导出成员“firstValueFrom”

问题描述 投票:0回答:2

App.service 文件如下所示:

import { Injectable } from '@nestjs/common';
import { HttpService } from '@nestjs/axios';
import { Observable, firstValueFrom } from 'rxjs';
// import { firstValueFrom } from 'rxjs';

@Injectable()
export class AppService {
  constructor(private httpService: HttpService) {}
  async getWeatherForecasts() {
    const url =
      'http://www.7timer.info/bin/api.pl?lon=113.17&lat=23.09&product=astro&output=json';
    const { data } = await firstValueFrom(this.httpService.get(url));
    return data;
  }
}

Package.json 文件如下所示:

  "dependencies": {
    "@fmr-pr103625/nest-scaffold": "^1.5.5",
    "@nestjs/apollo": "^10.0.9",
    "@nestjs/axios": "0.0.7",
    "@nestjs/common": "^7.6.18",
    "@nestjs/core": "^7.6.18",
    "@nestjs/graphql": "^10.0.9",
    "@nestjs/platform-express": "^7.6.18",
    "apollo-server-express": "^3.6.7",
    "axios": "^0.27.2",
    "graphql": "^16.3.0",
    "graphql-tools": "^8.2.8",
    "isomorphic-fetch": "^3.0.0",
    "reflect-metadata": "^0.1.13",
    "rimraf": "^3.0.2",
    "rxjs": "^5.5.10",
    "rxjs-compat": "^6.6.7",
    "ts-morph": "^14.0.0"
  },

-----------------**************************************************************************************************************************************************** ----------------------

我无法从 rxjs 导入firstValueForm。

我已经尝试过的事情:

  1. 将 rxjs 版本从 6 降级。
node.js angularjs rxjs nestjs
2个回答
7
投票

firstValueFrom
引入
Rxjs 7
作为
toPromise

的替代品

RxJS 6.x 到 7.x 详细变更列表


0
投票

如果您使用 TypeScript,请确保您的 tsconfig.json 配置正确并且与您正在使用的 ECMAScript 功能兼容。特别检查模块、目标和 lib 选项。

例如,您的 tsconfig.json 可能与此类似(根据您的项目需要进行调整):

{ “编译器选项”:{ “模块”:“esnext”, “目标”:“es2015”, “lib”:[“es2018”,“dom”] } }

© www.soinside.com 2019 - 2024. All rights reserved.