我正在创建一个简单的示例auth app,其中Ionic 2和angularfire 2作为后端,当我尝试创建新用户时,它说:
EXCEPTION:错误:未捕获(在承诺中):错误:指定的 此Firebase未启用身份验证提供程序。
但我已经在firebase控制台中启用了firebase身份验证:
app.ts
import {App, Platform} from 'ionic-angular';
import {StatusBar} from 'ionic-native';
import {HomePage} from './pages/home/home';
import { FIREBASE_PROVIDERS, defaultFirebase, firebaseAuthConfig, AuthProviders, AuthMethods } from 'angularfire2';
@App({
template: '<ion-nav [root]="rootPage"></ion-nav>',
providers: [
FIREBASE_PROVIDERS,
defaultFirebase('https://samplequizapp-50eb5.firebaseio.com'),
firebaseAuthConfig({
provider: AuthProviders.Password,
method: AuthMethods.Password
})
],
config: {} // http://ionicframework.com/docs/v2/api/config/Config/
})
export class MyApp {
rootPage: any = HomePage;
constructor(platform: Platform) {
platform.ready().then(() => {
// Okay, so the platform is ready and our plugins are available.
// Here you can do any higher level native things you might need.
StatusBar.styleDefault();
});
}
}
home.ts
import { Page } from 'ionic-angular';
import { AngularFire, FirebaseListObservable } from 'angularfire2';
import { OnInit } from '@angular/core'
@Page({
templateUrl: 'build/pages/home/home.html'
})
export class HomePage implements OnInit {
user: any = {};
data: FirebaseListObservable<any[]>;
constructor(private af: AngularFire) {
}
ngOnInit() {
this.data = this.af.database.list('/userId')
}
signUp(data) {
this.af.auth.createUser({
email: data.email,
password: data.password
})
}
}
我很确定我的代码没有任何问题:
答案 0 :(得分:13)
当前版本(2.4.2)中的Firebase2尚未与Firebase SDK v3兼容,并且只能使用可与SDK v3兼容的调用访问使用新Firebase控制台创建的所有项目。
您希望首先在旧版控制台www.firebase.com中创建Firebase后端,然后迁移到新控制台。
这在angularfire2 github:https://github.com/angular/angularfire2/issues/189
的封闭期刊中有记载