我试图使用角度火力基地并与Facebook联系,但我得到了这个错误:
AppComponent.html:2 ERROR TypeError: Cannot read property 'FacebookAuthProvider' of undefined
at AuthService.signInWithFacebook (auth.service.ts:26)
at AppComponent.signInWithFacebook (app.component.ts:20)
at Object.eval [as handleEvent] (AppComponent.html:2)
at handleEvent (core.js:13589)
at callWithDebugContext (core.js:15098)
at Object.debugHandleEvent [as handleEvent] (core.js:14685)
at dispatchEvent (core.js:10004)
at eval (core.js:10629)
at HTMLButtonElement.eval (platform-browser.js:2628)
at ZoneDelegate.invokeTask (zone.js:421)
我尝试更改firebase版本并更改依赖项,到目前为止没有任何效果。
依赖关系:
"angularfire2": "^5.0.0-rc.6.0",
"core-js": "^2.4.1",
"firebase": "4.13.1",
"rxjs": "^5.5.6",
"zone.js": "^0.8.19",
"@firebase/app": "^0.1.10"
auth.service.ts:
import { Injectable } from '@angular/core';
import { Router } from "@angular/router";
import { AngularFireAuth } from 'angularfire2/auth';
import * as firebase from 'firebase/app';
import { Observable } from 'rxjs/Observable';
@Injectable()
export class AuthService {
private user: Observable<firebase.User>;
private userDetails: firebase.User = null;
constructor(private _firebaseAuth: AngularFireAuth, private router: Router) {
this.user = _firebaseAuth.authState;
this.user.subscribe(
(user) => {
if (user) {
this.userDetails = user;
console.log(this.userDetails);
}
else {
this.userDetails = null;
}
}
);
}
signInWithFacebook() {
return this._firebaseAuth.auth.signInWithPopup(
new firebase.auth.FacebookAuthProvider()
)
}
我在做什么? 感谢
答案 0 :(得分:0)
你在导入中错过了@。
import { firebase } from `@firebase/app'
答案 1 :(得分:-1)
对我有用的是更改我home.ts
中的导入声明:
import firebase from 'firebase';