【问题标题】:Angular adding PWA causing problem with Angular IvyAngular 添加 PWA 导致 Angular Ivy 出现问题
【发布时间】:2020-07-26 11:42:16
【问题描述】:
     _                      _                 ____ _     ___
    / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
   / △ \ | '_ \ / _` | | | | |/ _` | '__|   | |   | |    | |
  / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
 /_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
                |___/
    

Angular CLI: 10.0.4
Node: 12.18.3
OS: darwin x64

Angular: 10.0.5
... animations, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router
... service-worker
Ivy Workspace: Yes

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.1000.4
@angular-devkit/build-angular     0.1000.4
@angular-devkit/build-optimizer   0.1000.4
@angular-devkit/build-webpack     0.1000.4
@angular-devkit/core              10.0.4
@angular-devkit/schematics        10.0.4
@angular/cli                      10.0.4
@ngtools/webpack                  10.0.4
@schematics/angular               10.0.4
@schematics/update                0.1000.4
rxjs                              6.5.5
typescript                        3.9.7
webpack                           4.43.0

我在项目中添加了ng add @angular/pwa

还有这一行:

    ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production }),

app.module.ts 引起问题:

    ERROR in node_modules/@angular/service-worker/service-worker.d.ts:15:22 - error NG6002: Appears in the NgModule.imports of AppModule, but could not be resolved to an NgModule class.
    
    This likely means that the library (@angular/service-worker) which declares ServiceWorkerModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Ivy.
    
    15 export declare class ServiceWorkerModule {
                            ~~~~~~~~~~~~~~~~~~~

我该如何解决这个问题?

很难添加更多细节来克服 stackoverflow 解析器,而我使用 angular version 命令添加了许多细节。

【问题讨论】:

标签: javascript angular typescript progressive-web-apps service-worker


【解决方案1】:

您可以在 tsconfig.app.json 中将 enableIvy 设置为 false,这应该可以解决您的问题

"enableIvy": false

【讨论】:

    【解决方案2】:

    看起来有帮助

      "angularCompilerOptions": {
        "enableIvy": false
      }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-16
      • 1970-01-01
      • 2020-08-20
      • 1970-01-01
      • 2021-01-16
      • 1970-01-01
      • 1970-01-01
      • 2016-11-28
      相关资源
      最近更新 更多