Добавление @ angular / fire к angular 12

Я пытаюсь добавить @angular / fire в свой проект Angular 12, чтобы развернуть его на Firebase. Я использовал cli, чтобы добавить @angular / fire, который я запускаю:

      ng add @angular/fire

Вот результат, который я получаю:

      ℹ Using package manager: npm
✔ Found compatible package version: @angular/fire@0.0.0.
✔ Package information loaded.
 
The package @angular/fire@0.0.0 will be installed and executed.
Would you like to proceed? Yes
✔ Package successfully installed.
The package that you are trying to add does not support schematics. You can try using a different version of the package or contact the package author to add ng-add support.

Я пробовал использовать npm для установки зависимости:

      npm i @angular/fire

Вот результат:

      npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@angular/animations@12.0.0',
npm WARN EBADENGINE   required: { node: '^12.14.1 || ^14.0.0' },
npm WARN EBADENGINE   current: { node: 'v16.1.0', npm: '7.13.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@angular/common@12.0.0',
npm WARN EBADENGINE   required: { node: '^12.14.1 || ^14.0.0' },
npm WARN EBADENGINE   current: { node: 'v16.1.0', npm: '7.13.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@angular/compiler@12.0.0',
npm WARN EBADENGINE   required: { node: '^12.14.1 || ^14.0.0' },
npm WARN EBADENGINE   current: { node: 'v16.1.0', npm: '7.13.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@angular/compiler-cli@12.0.0',
npm WARN EBADENGINE   required: { node: '^12.14.1 || ^14.0.0' },
npm WARN EBADENGINE   current: { node: 'v16.1.0', npm: '7.13.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@angular/core@12.0.0',
npm WARN EBADENGINE   required: { node: '^12.14.1 || ^14.0.0' },
npm WARN EBADENGINE   current: { node: 'v16.1.0', npm: '7.13.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@angular/forms@12.0.0',
npm WARN EBADENGINE   required: { node: '^12.14.1 || ^14.0.0' },
npm WARN EBADENGINE   current: { node: 'v16.1.0', npm: '7.13.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@angular/platform-browser@12.0.0',
npm WARN EBADENGINE   required: { node: '^12.14.1 || ^14.0.0' },
npm WARN EBADENGINE   current: { node: 'v16.1.0', npm: '7.13.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@angular/platform-browser-dynamic@12.0.0',
npm WARN EBADENGINE   required: { node: '^12.14.1 || ^14.0.0' },
npm WARN EBADENGINE   current: { node: 'v16.1.0', npm: '7.13.0' }
npm WARN EBADENGINE }
npm WARN EBADENGINE Unsupported engine {
npm WARN EBADENGINE   package: '@angular/router@12.0.0',
npm WARN EBADENGINE   required: { node: '^12.14.1 || ^14.0.0' },
npm WARN EBADENGINE   current: { node: 'v16.1.0', npm: '7.13.0' }
npm WARN EBADENGINE }

up to date, audited 1388 packages in 6s

3 moderate severity vulnerabilities

To address all issues (including breaking changes), run:
  npm audit fix --force

Run `npm audit` for details.

Вот мой package.json:

      {
  "name": "ng-jumbo-fire",
  "version": "0.0.0",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "~12.0.0",
    "@angular/cdk": "^11.2.12",
    "@angular/common": "~12.0.0",
    "@angular/compiler": "~12.0.0",
    "@angular/core": "~12.0.0",
    "@angular/fire": "^0.0.0",
    "@angular/forms": "~12.0.0",
    "@angular/material": "^11.2.12",
    "@angular/platform-browser": "~12.0.0",
    "@angular/platform-browser-dynamic": "~12.0.0",
    "@angular/router": "~12.0.0",
    "rxjs": "~6.6.0",
    "tslib": "^2.0.0",
    "zone.js": "~0.11.4"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^0.1102.13",
    "@angular/compiler-cli": "~12.0.0",
    "@types/jasmine": "~3.6.0",
    "@types/node": "^12.11.1",
    "codelyzer": "^6.0.0",
    "jasmine-core": "~3.6.0",
    "jasmine-spec-reporter": "~5.0.0",
    "karma": "~6.3.2",
    "karma-chrome-launcher": "~3.1.0",
    "karma-coverage": "~2.0.3",
    "karma-jasmine": "~4.0.0",
    "karma-jasmine-html-reporter": "^1.5.0",
    "protractor": "~7.0.0",
    "ts-node": "~8.3.0",
    "tslint": "~6.1.0",
    "typescript": "~4.2.4"
  }
}

Как мне его установить. Я заметил, что @angular / fire находится в версии 0.0.0. Папка .node_modules / @angular / fire пуста. Буду признателен за любую помощь.

2 ответа

Если вы проверите матрицу совместимости, она еще не полностью поддерживается Angular 12. Так что вам может быть лучше использовать Angular 11.

Источник: https://github.com/angular/angularfire#compatibility

Для Angular 12 ниже зависимости с такой версией решили мои проблемы.

Установите firebase версии 7.0 || 8.0 и @ angular / fire версии 6.1.5 .

Зависимости папки package.json должны выглядеть так:

      "dependencies": {
...
"@angular/fire": "^6.1.5",
"firebase": "^7.0 || ^8.0"
}

app.module.ts

      import { AngularFireModule } from '@angular/fire';
import { AngularFirestoreModule } from '@angular/fire/firestore';

  imports: [
    ...
    AngularFireModule.initializeApp(firebaseConfig),
    AngularFirestoreModule
  ],
Другие вопросы по тегам