![](/img/trans.png)
[英]angulardart firestore throw error “firebase.firestore is not a function”
[英]Firebase throws error in an AngularDart project
在哪里可以找到AngularDart项目的Firebase(.firebaserc)文件。
项目连接时,Firebase会写入以下文件。
Writing configuration info to firebase.json...
Writing project information to .firebaserc...
火力基地错误
(anonymous function) Uncaught Unhandled exception:
EXCEPTION: Error in
package:my_app/views/app_component/app_component.html:0:0
ORIGINAL EXCEPTION: NoSuchMethodError: Class 'String' has no instance method
'_hasProperty'.
Receiver: "[DEFAULT]: Firebase: Firebase App named '[DEFAULT]' already exists (app/duplicate-app)."
Tried calling: _hasProperty("message")
它包含初始化firebase的代码。 firebase_service.dart
import 'dart:async';
import 'package:angular/angular.dart';
import 'package:firebase/firebase.dart' as fb;
@Injectable()
class FirebaseService {
fb.User user;
fb.Auth _fbAuth;
fb.GoogleAuthProvider _fbGoogleAuthProvider;
FirebaseService() {
fb.initializeApp(
apiKey: "AIzaSyBOShlCgUeqTL99n32bjWdNlkH1111111",
authDomain: "my-app.firebaseapp.com",
databaseURL: "https://my-app.firebaseio.com",
storageBucket: "my-app.appspot.com",
);
_fbGoogleAuthProvider = new fb.GoogleAuthProvider();
_fbAuth = fb.auth();
_fbAuth.onAuthStateChanged.listen(_authChanged);
}
void _authChanged(fb.User event) {
user = event;
}
Future signIn() async {
try {
await _fbAuth.signInWithPopup(_fbGoogleAuthProvider);
}
catch (error) {
print("$runtimeType::login() -- $error");
}
}
void signOut() {
_fbAuth.signOut();
}
}
如果服务中的代码仅应实例化一次,请确保仅提供一次服务。
仅在以下地区提供此类服务
bootstrap(AppComponent, [...])
或仅在
@Component(
...,
providers: const [...])
}
class AppComponent {}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.