"ERROR TypeError: Object(...) is not a function" using AngularFirestore and firebase
"ERROR TypeError: Object(...) is not a function" using AngularFirestore and firebase
我想在我的应用程序中使用 firebase 和 angularfire2,首先,我安装了它们,对于声明:
在environment.ts
export const environment = {
production: false,
firebase: {
apiKey: 'sfsdfdsff',
authDomain: 'sfsdfdf',
databaseURL: 'https://ng-sfsdfsf.firebaseio.com',
projectId: 'ng-fitnesssfsdfdsf',
storageBucket: 'ng-fsdfsdfsfdecff5.appspot.com',
messagingSenderId: '21331323'
}
};
在 app.module.ts 中,进口:
AngularFireModule.initializeApp(environment.firebase),
AngularFirestoreModule
在要获取我的数据的组件中:
import { AngularFirestore } from 'angularfire2/firestore';
直到这一刻我没有错误,但是当我想在构造函数中声明我的变量以使用它时:
constructor(private trainingService: TrainingService, private
db:AngularFirestore) { }
我有一个错误:
ERROR TypeError: Object(...) is not a function
at eval (firestore.js:28)
at ZoneDelegate.invoke (zone.js:388)
at Zone.run (zone.js:138)
在我的 package.json:
"angularfire2": "^5.0.0-rc.8.0",
"core-js": "^2.4.1",
"firebase": "^5.0.2",
我不知道为什么?
感谢您的帮助
安装"angularfire2": 5.0.0-rc.9
时出现同样的错误。
当我回滚到 5.0.0-rc.6
时错误消失了。
npm install angularfire2@5.0.0-rc.6
npm install firebase@4.12.1
去掉^
版本前面的这一项。
就这样吧。
{
...
"angularfire2": "5.0.0-rc.6",
"firebase": "4.12.1",
}
我首先卸载了 firebase 和 angularfire2:
npm uninstall firebase
npm uninstall angularfire2
然后重新安装:
npm install firebase@4.12.1
npm install angularfire2@5.0.0-rc.6
在实际安装的版本中使用 ^
angularfire2@5.0.0-rc.9 所以我只是删除了那部分。
Angular这里是 Fire 维护者,我们在迈向 5.0 GA 的过程中进行了许多重大更改。为了支持 Angular 6,最近发布的 AngularFire 需要 rxjs 6。虽然是的,降级或固定到旧版本可以快速修复,但我不建议这样做让你在未来对库进行改进。
如果您有尚未升级的依赖项,我建议将 rxj6 升级到版本 6 并包括 rxjs-compat
:
npm i rxjs@^6.0 rxjs-compat
请密切关注 angularfire changelog,了解有关任何重大更改的重要信息;一旦我们达到 GA,我们将遵守 semver。
作为参考
我遇到了同样的问题,但我解决了。你可以关注我的工作。这是离子的例子。
安装 rxjs
npm i rxjs@^6.0 rxjs-compat
将 rxjs-compact 导入文件
import { AngularFireDatabase, AngularFireList } from 'angularfire2/database';
import { Observable } from 'rxjs-compat';
import { map } from 'rxjs-compat/operators';
这是我的解决方案:
npm uninstall angularfire2
npm install angularfire2@5.0.0-rc.4
npm uninstall firebase
npm install firebase@4.8.0
npm install rxjs@6 rxjs-compat@6
这解决了问题
我遇到了同样的错误。一旦我用 sudo npm update rxjs
更新了 rxjs。然后用 sudo npm i rxjs@latest rxjs-compat
更新了 rxjs-compat。修复漏洞后 运行 ng build
然后 ng serve
。这解决了我的错误。 (在 macOS 上)
我想在我的应用程序中使用 firebase 和 angularfire2,首先,我安装了它们,对于声明:
在environment.ts
export const environment = {
production: false,
firebase: {
apiKey: 'sfsdfdsff',
authDomain: 'sfsdfdf',
databaseURL: 'https://ng-sfsdfsf.firebaseio.com',
projectId: 'ng-fitnesssfsdfdsf',
storageBucket: 'ng-fsdfsdfsfdecff5.appspot.com',
messagingSenderId: '21331323'
}
};
在 app.module.ts 中,进口:
AngularFireModule.initializeApp(environment.firebase),
AngularFirestoreModule
在要获取我的数据的组件中:
import { AngularFirestore } from 'angularfire2/firestore';
直到这一刻我没有错误,但是当我想在构造函数中声明我的变量以使用它时:
constructor(private trainingService: TrainingService, private
db:AngularFirestore) { }
我有一个错误:
ERROR TypeError: Object(...) is not a function
at eval (firestore.js:28)
at ZoneDelegate.invoke (zone.js:388)
at Zone.run (zone.js:138)
在我的 package.json:
"angularfire2": "^5.0.0-rc.8.0",
"core-js": "^2.4.1",
"firebase": "^5.0.2",
我不知道为什么?
感谢您的帮助
安装"angularfire2": 5.0.0-rc.9
时出现同样的错误。
当我回滚到 5.0.0-rc.6
时错误消失了。
npm install angularfire2@5.0.0-rc.6
npm install firebase@4.12.1
去掉^
版本前面的这一项。
就这样吧。
{
...
"angularfire2": "5.0.0-rc.6",
"firebase": "4.12.1",
}
我首先卸载了 firebase 和 angularfire2:
npm uninstall firebase
npm uninstall angularfire2
然后重新安装:
npm install firebase@4.12.1
npm install angularfire2@5.0.0-rc.6
在实际安装的版本中使用 ^
angularfire2@5.0.0-rc.9 所以我只是删除了那部分。
Angular这里是 Fire 维护者,我们在迈向 5.0 GA 的过程中进行了许多重大更改。为了支持 Angular 6,最近发布的 AngularFire 需要 rxjs 6。虽然是的,降级或固定到旧版本可以快速修复,但我不建议这样做让你在未来对库进行改进。
如果您有尚未升级的依赖项,我建议将 rxj6 升级到版本 6 并包括 rxjs-compat
:
npm i rxjs@^6.0 rxjs-compat
请密切关注 angularfire changelog,了解有关任何重大更改的重要信息;一旦我们达到 GA,我们将遵守 semver。
作为参考我遇到了同样的问题,但我解决了。你可以关注我的工作。这是离子的例子。
安装 rxjs
npm i rxjs@^6.0 rxjs-compat
将 rxjs-compact 导入文件
import { AngularFireDatabase, AngularFireList } from 'angularfire2/database';
import { Observable } from 'rxjs-compat';
import { map } from 'rxjs-compat/operators';
这是我的解决方案:
npm uninstall angularfire2
npm install angularfire2@5.0.0-rc.4
npm uninstall firebase
npm install firebase@4.8.0
npm install rxjs@6 rxjs-compat@6
这解决了问题
我遇到了同样的错误。一旦我用 sudo npm update rxjs
更新了 rxjs。然后用 sudo npm i rxjs@latest rxjs-compat
更新了 rxjs-compat。修复漏洞后 运行 ng build
然后 ng serve
。这解决了我的错误。 (在 macOS 上)