【问题标题】:swagger codegen --> angular6: rxjs observable compile errorswagger codegen --> angular6: rxjs observable compile error
【发布时间】:2018-10-29 04:19:58
【问题描述】:

当使用 angular 6 和 swagger codegen 时,我收到与 rxjs 相关的 typescript 编译器错误:

Cannot find module 'rxjs-compat/Observable'

我发现了以下内容 https://github.com/ReactiveX/rxjs/blob/master/MIGRATION.md#rxjs-v5x-to-v6-update-guide

我在 Mac 上使用swagger-codegen: stable 2.3.1(安装了 brew)。

感谢任何指导。

更新-----------

我将 rxjs-compat 添加到我的 angular6 项目中使用

npm install --save-dev rxjs-compat

我现在收到编译器警告,但编译器错误消失了,项目似乎正在运行

【问题讨论】:

    标签: angular typescript swagger codegen rxjs6


    【解决方案1】:

    对于我来说,我使用“swagger-codegen-cli-2.4.0.jar”来生成,为了解决“rxjs”问题,我在命令末尾添加了这个:

    --additional-properties ngVersion=6
    

    【讨论】:

      【解决方案2】:

      我也遇到了同样的问题。

      即使用 2.4 替换 swagger 生成器也不能解决问题,我发现的解决方法是将 rxjscompat 添加到项目中:npm install rxjs-compat@6

      查看更多讨论详情:https://github.com/swagger-api/swagger-codegen/issues/8179#issuecomment-402575414

      【讨论】:

        【解决方案3】:

        如果您是从以前的 Angular 版本迁移,请遵循以下指南:

        https://update.angular.io/

        rxjs-compat 包与以前的rxjs 实现兼容。例如:

        import { concat } from 'rxjs/observable/concat'

        但是,这应该更新到版本 6 中的新实现。例如:

        import { catchError, map, switchMap } from 'rxjs/operators';

        就是这么说的。您还必须使用pipe 更改可观察运算符的实现。例如:

        this.sampleService
              .search(
                payload.firstName,
                payload.lastName,
                payload.dateOfBirth
              )
              .pipe(
                map(response => new sampleActions.SearchSuccess(response.json())),
                catchError(error => of(new sampleActions.SearchFail(error)))
              )
        

        如您所见,运算符 mapcatchError 有不同的实现,使用 pipe 运算符。

        也许您可以共享日志的副本,以便更容易理解导致错误/警告的原因。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-10-10
          • 2017-01-01
          • 2015-10-13
          • 2019-10-08
          相关资源
          最近更新 更多