【问题标题】:PWA support in Angular throws node_modules/@angular/service-worker/service-worker.d.ts, found version 4, expected 3 errorAngular 中的 PWA 支持抛出 node_modules/@angular/service-worker/service-worker.d.ts,找到版本 4,预期 3 错误
【发布时间】:2018-10-25 03:59:18
【问题描述】:

我正在将 PWA 集成到我的 Angular 项目中。在app.module.ts 中注册ServiceWorkerModule 时出现错误

app.module.ts

@NgModule({
 imports: [
 ...
 ServiceWorkerModule.register('/ngsw-worker.js', { enabled: environment.production })
 ]
})

当我运行 ng build --prod 时出现此错误

./src/main.ts 中的错误 找不到模块:错误:无法解析“/app/webel/src/main/webapp/webel/src”中的“./$$_gendir/app/app.module.ngfactory” 错误中的错误:模块 /app/webel/src/main/webapp/webel/node_modules/@angular/service-worker/service-worker.d.ts 的元数据版本不匹配,找到版本 4,预期版本 3 在 StaticSymbolResolver.getModuleMetadata (/app/webel/src/main/webapp/webel/node_modules/@angular/compiler/bundles/compiler.umd.js:25616:34) 在 StaticSymbolResolver._createSymbolsOf (/app/webel/src/main/webapp/webel/node_modules/@angular/compiler/bundles/compiler.umd.js:25404:46) 在 StaticSymbolResolver.getSymbolsOf (/app/webel/src/main/webapp/webel/node_modules/@angular/compiler/bundles/compiler.umd.js:25385:14) 在 /app/webel/src/main/webapp/webel/node_modules/@angular/compiler/bundles/compiler.umd.js:24241:30 在 Array.forEach () 在 extractProgramSymbols (/app/webel/src/main/webapp/webel/node_modules/@angular/compiler/bundles/compiler.umd.js:24240:79) 在 AotCompiler.analyzeModulesAsync (/app/webel/src/main/webapp/webel/node_modules/@angular/compiler/bundles/compiler.umd.js:23796:47) 在 CodeGenerator.codegen (/app/webel/src/main/webapp/webel/node_modules/@angular/compiler-cli/src/codegen.js:32:14) 在 Function.NgTools_InternalApi_NG_2.codeGen (/app/webel/src/main/webapp/webel/node_modules/@angular/compiler-cli/src/ngtools_api.js:73:30) 在 _donePromise.Promise.resolve.then (/app/webel/src/main/webapp/webel/node_modules/@ngtools/webpack/src/plugin.js:428:58) 在 在 process._tickCallback (internal/process/next_tick.js:160:7)

我正在使用以下版本,

"@angular/cli": "^1.7.3"
"ng-pwa-tools": "0.0.15"
"@angular/service-worker": "^6.0.1"
"@angular/compiler": "^4.4.4"

任何帮助将不胜感激。

【问题讨论】:

  • npm install....
  • @ritaj npm install 运气不好。
  • 你的角度编译器依赖版本是什么。错误源于它
  • npm i --save @angular/service-worker@<version> 设置相同版本的角度。例如@angular/service-worker": "^5.2.0
  • @bhavesh27 它的"@angular/compiler": "^4.4.4"

标签: angular typescript service-worker angular-service-worker


【解决方案1】:

完全迁移到 Angular 6.0 解决了这个问题。虽然rxjs 在 6.0 中有一些重大更改,但可以通过迁移到最新版本来解决,也可以通过添加 rxjs-compat 立即修复(Backword 兼容性)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-05
    • 2018-06-11
    • 2020-02-06
    • 1970-01-01
    • 2018-09-29
    • 2020-02-09
    • 2020-10-07
    • 1970-01-01
    相关资源
    最近更新 更多