angular - 错误类 'FirebaseApp' 错误地实现了接口(interface) 'App'

标签 angular firebase npm

尝试提供我的 angularCLI 和 Firebase 导致此错误...我该怎么办?

ERROR in node_modules/angularfire2/app/firebase.app.module.d.ts(5,22): error TS2420: Class 'FirebaseApp' incorrectly implements interface 'App'. Property 'firestore' is missing in type 'FirebaseApp'. node_modules/angularfire2/app/firebase.app.module.d.ts(12,28): error TS2694: Namespace 'firebase' has no exported member 'Promise'. node_modules/angularfire2/database/firebase_list_observable.d.ts(14,62): error TS2694: Namespace 'firebase' has no exported member 'Promise'. node_modules/angularfire2/database/firebase_list_observable.d.ts(15,48): error TS2694: Namespace 'firebase' has no exported member 'Promise'. node_modules/angularfire2/database/firebase_list_observable.d.ts(16,92): error TS2694: Namespace 'firebase' has no exported member 'Promise'. node_modules/angularfire2/database/firebase_object_observable.d.ts(11,31): error TS2694: Namespace 'firebase' has no exported member 'Promise'. node_modules/angularfire2/database/firebase_object_observable.d.ts(12,37): error TS2694: Namespace 'firebase' has no exported member 'Promise'. node_modules/angularfire2/database/firebase_object_observable.d.ts(13,24): error TS2694: Namespace 'firebase' has no exported member 'Promise'. node_modules/angularfire2/interfaces.d.ts(12,32): error TS2694: Namespace 'firebase' has no exported member 'Promise'. node_modules/angularfire2/interfaces.d.ts(13,35): error TS2694: Namespace 'firebase' has no exported member 'Promise'. node_modules/angularfire2/interfaces.d.ts(14,35): error TS2694: Namespace 'firebase' has no exported member 'Promise'. node_modules/angularfire2/interfaces.d.ts(15,44): error TS2694: Namespace 'firebase' has no exported member 'Promise'.

webpack: Failed to compile.

包.json

{
  "name": "oshop",
  "version": "0.0.0",
  "license": "MIT",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build --prod",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "^5.2.0",
    "@angular/common": "^5.2.0",
    "@angular/compiler": "^5.2.0",
    "@angular/core": "^5.2.0",
    "@angular/forms": "^5.2.0",
    "@angular/http": "^5.2.0",
    "@angular/platform-browser": "^5.2.0",
    "@angular/platform-browser-dynamic": "^5.2.0",
    "@angular/router": "^5.2.0",
    "@ng-bootstrap/ng-bootstrap": "^1.0.0",
    "angularfire2": "^4.0.0-rc.1",
    "bootstrap": "^4.0.0",
    "core-js": "^2.4.1",
    "firebase": "^4.9.1",
    "rxjs": "^5.5.6",
    "zone.js": "^0.8.19"
  },
  "devDependencies": {
    "@angular/cli": "^1.6.7",
    "@angular/compiler-cli": "^5.2.0",
    "@angular/language-service": "^5.2.0",
    "@types/jasmine": "~2.8.3",
    "@types/jasminewd2": "~2.0.2",
    "@types/node": "~6.0.60",
    "codelyzer": "^4.0.1",
    "jasmine-core": "~2.8.0",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~2.0.0",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "^1.2.1",
    "karma-jasmine": "~1.1.0",
    "karma-jasmine-html-reporter": "^0.2.2",
    "protractor": "~5.1.2",
    "ts-node": "~4.1.0",
    "tslint": "~5.9.1",
    "typescript": "~2.5.3"
  },
  "description": "This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 1.6.7.",
  "main": "karma.conf.js",
  "author": "",
  "repository": {
    "type": "git",
    "url": "imnickvaughn"
  }
}

最佳答案

您应该首先尝试: (如果你安装了 angular cli 和 firebase)

  1. 在终端输入:npm install -S angularfire2@latest

一旦你这样做了,你的 angularfire2 就会显示: "angularfire2": "^5.0.0-rc.6",

……就是这样

如果这还不够,请查看这些资源并尝试... https://github.com/angular/angularfire2/issues/1338 https://github.com/angular/angular-cli/issues/4391

npm uninstall -g angular-cli
npm cache clean
npm install -g @angular/cli@latest

rm -rf node_modules dist
npm uninstall --save-dev angular-cli
npm install --save-dev @angular/cli@latest
npm install
ng update [this wasn't working so I just changed it to ng init I believe]

npm install -g firebase-tools
npm install -S angularfire2@latest

使用上述建议并重新安装所有依赖项也适用于此问题... npm WARN 已弃用 node-uuid@1.4.7:改用 uuid 模块 https://github.com/kelektiv/node-uuid/issues/155

...此外,在我准确输入之前,firebase 命令在我的 oh-my-zsh 中不起作用:

npm install -S -D -g firebase-tools

进入 vs code 终端。

希望这能为某人节省一到五个小时...

关于angular - 错误类 'FirebaseApp' 错误地实现了接口(interface) 'App',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48597037/

相关文章:

node.js - 如何禁用/停止 pm2 模块?

angular - Typescript 中的 Boolean 和 boolean 有什么区别?

javascript - 带渲染器的 Angular 2+ CSS 自定义属性(变量)

angular - 在 snackbar Angular 4 中添加换行符

android - 如何从网站向 Android 发送 Firebase 通知

JavaScript index.js .babelrc 错误 "Do not clone comments tha...<omitted>... } could not be cloned"

javascript - 来自 Angular 的 Http Post 请求不起作用

java - 忽略手机静音模式

javascript - CoffeeScript 函数返回一个函数而不是一个值

javascript - ENOLOCK npm 错误!运行 npm 审核修复时出错