ионная ошибка времени выполнения - зона уже загружена - PullRequest
0 голосов
/ 07 мая 2018

Я просто хотел использовать ионную аутентификацию 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

Я искал все, но ничего не помогает.

То, что я уже сделал:

  1. Я следую за всем по этой ссылке "Зона ошибок времени выполнения уже загружена" в ionic 3 , но это не решило мою проблему
  2. Я пытался удалить «зону импорта ...», но не смог ее найти. Просматривал файлы целиком, но не смог точно импортировать зону. Я получил по этой ссылке Как определить, какая зона уже загружена?

Я не смог найти никаких решений прямо сейчас. Любые предложения приветствуются.

Мой файл 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);
  }

}

1 Ответ

0 голосов
/ 08 мая 2018

У меня была точная проблема сегодня. Это доказывает проблему angularfire2

Вы можете найти проблему на github: Зона ошибок времени выполнения уже загружена

После отката на rc4 все работает нормально, надеюсь, это поможет.

npm install angularfire2@5.0.0-rc.4
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...