Я просто хотел использовать ионную аутентификацию 3 + firebase. Я следовал последним рекомендациям, YouTube, документации, но всегда сталкивался с этой проблемой при запуске 'ionic serve':
Error: Zone already loaded.
at http://localhost:8100/build/vendor.js:117672:15
at http://localhost:8100/build/vendor.js:118284:3
at FUNCTION (http://localhost:8100/build/vendor.js:117649:10)
at Object.<anonymous> (http://localhost:8100/build/vendor.js:117652:2)
at Object.<anonymous> (http://localhost:8100/build/vendor.js:120702:30)
at __webpack_require__ (http://localhost:8100/build/vendor.js:55:30)
at Object.defineProperty.value (http://localhost:8100/build/vendor.js:69145:66)
at __webpack_require__ (http://localhost:8100/build/vendor.js:55:30)
at Object.<anonymous> (http://localhost:8100/build/vendor.js:117167:72)
at __webpack_require__ (http://localhost:8100/build/vendor.js:55:30)
Ionic Framework: 3.9.2
Ionic App Scripts: 3.1.9
Angular Core: 5.2.10
Angular Compiler CLI: 5.2.10
Node: 9.11.1
OS Platform: Windows 8.1
Navigator Platform: Win32
User Agent: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36
Я искал все, но ничего не помогает.
То, что я уже сделал:
- Я следую за всем по этой ссылке "Зона ошибок времени выполнения уже загружена" в ionic 3 , но это не решило мою проблему
- Я пытался удалить «зону импорта ...», но не смог ее найти. Просматривал файлы целиком, но не смог точно импортировать зону. Я получил по этой ссылке Как определить, какая зона уже загружена?
Я не смог найти никаких решений прямо сейчас. Любые предложения приветствуются.
Мой файл app.module.ts
import { RegisterPage } from './../pages/register/register';
import { LoginPage } from './../pages/login/login';
import { CollectionPage } from './../pages/collection/collection';
import { BrowserModule } from '@angular/platform-browser';
import { ErrorHandler, NgModule } from '@angular/core';
import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular';
import { MyApp } from './app.component';
import { HomePage } from '../pages/home/home';
import { ListPage } from '../pages/list/list';
import { StatusBar } from '@ionic-native/status-bar';
import { SplashScreen } from '@ionic-native/splash-screen';
import { AngularFireModule } from 'angularfire2';
import { AngularFireAuthModule } from 'angularfire2/auth';
const firebaseAuth = {
apiKey: "Axxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
authDomain: "fxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
databaseURL: "hxxxxxxxxxxxxxx",
projectId: "fxxxxxxxxxxxxx",
storageBucket: "firxxxxxxxxxxxx",
messagingSenderId: "xxxxxxxxx"
};
@NgModule({
declarations: [
MyApp,
HomePage,
CollectionPage,
],
imports: [
BrowserModule,
IonicModule.forRoot(MyApp),
AngularFireModule.initializeApp(firebaseAuth),
AngularFireAuthModule
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
HomePage,
CollectionPage,
],
providers: [
StatusBar,
SplashScreen,
{provide: ErrorHandler, useClass: IonicErrorHandler}
]
})
export class AppModule {
}
Мой файл register.html
<ion-header>
<ion-navbar>
<ion-title>Register</ion-title>
</ion-navbar>
</ion-header>
<ion-content padding>
<ion-list>
<ion-item>
<ion-label>Username</ion-label>
<ion-input type="text" value=""></ion-input>
</ion-item>
<ion-item>
<ion-label>Password</ion-label>
<ion-input type="password" value=""></ion-input>
</ion-item>
</ion-list>
<div padding>
<button ion-button color="primary" block (click)="registerUser()">Register</button>
</div>
</ion-content>
Мой файл register.ts
import { Component, ViewChild } from '@angular/core';
import { IonicPage, NavController, NavParams } from 'ionic-angular';
import { AngularFireAuth } from 'angularfire2/auth';
@IonicPage()
@Component({
selector: 'page-register',
templateUrl: 'register.html',
})
export class RegisterPage {
@ViewChild('username') user;
@ViewChild('password') password;
constructor(private fire: AngularFireAuth, public navCtrl: NavController, public navParams: NavParams) {
}
ionViewDidLoad() {
console.log('ionViewDidLoad RegisterPage');
}
registerUser() {
this.fire.auth.createUserWithEmailAndPassword(this.user.value, this.password.value)
.then(data => {
console.log('got data ', data);
})
.catch(error => {
console.log('got an error ', error);
});
console.log('Would register user with ', this.user.value, this.password.value);
}
}