[英]Cannot find name 'PhoneOrOauthTokenResponse' during firebase integration in Angular 13
我创建了 Angular 项目
ng new <projectname>
然后安装Angular火
ng add @angular/fire
当我编译并运行项目时
ng serve
我看到以下错误
Build at: 2022-05-07T07:48:29.607Z - Hash: dcd59b9e5be0333c - Time: 19924ms
Error: node_modules/@firebase/auth/dist/auth-public.d.ts:3137:22 - error TS2304: Cannot find name 'PhoneOrOauthTokenResponse'.
3137 _tokenResponse?: PhoneOrOauthTokenResponse;
~~~~~~~~~~~~~~~~~~~~~~~~~
Error: node_modules/@firebase/auth/dist/auth-public.d.ts:3429:11 - error TS2304: Cannot find name 'UserInternal'.
3429 user: UserInternal;
~~~~~~~~~~~~
** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
✖ Failed to compile.
我的 Angular 版本如下所示。 Angular需要降版本吗?
Angular CLI: 13.3.5
Node: 16.15.0
Package Manager: npm 8.5.5
OS: linux x64
Angular: 13.3.6
... animations, common, compiler, compiler-cli, core, forms
... platform-browser, platform-browser-dynamic, router
Package Version
---------------------------------------------------------
@angular-devkit/architect 0.1303.5
@angular-devkit/build-angular 13.3.5
@angular-devkit/core 13.3.5
@angular-devkit/schematics 13.3.5
@angular/cli 13.3.5
@angular/fire 7.3.0
@schematics/angular 13.3.5
rxjs 7.5.5
typescript 4.6.4
我有同样的问题。 该解决方案有效:
npm 安装 firebase@9.7.0 --save --save-exact
我从:
将 eslint 包更新到最新版本后,我也开始遇到这个问题。 在我的项目中,将它们降级到这些版本可以解决编译错误:
@angular/fire 在 v.7.3.0 上:
@eslint/eslintrc --> 1.2.2(问题从 1.2.3 开始)
eslint --> 8.14.0(8.15.0 开始出现问题)
我有同样的问题。 我认为这是版本 0.20 的问题。
我解决了它只是运行:
npm i @firebase/auth@^0.18.3
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.