NgZone不再起作用

时间:2018-09-03 21:29:34

标签: javascript angular typescript ionic-framework ngzone

我的NgZone似乎不再起作用。.我正在使用Ionic,Angular和Firebase构建应用程序。

它产生一个错误:

  

未处理的承诺拒绝:缺少命令错误;区域:任务:Promise.then;值:未定义缺少命令错误

我已经在项目中使用了几个月,完全没有问题,并且在很多地方都使用了它,但是突然之间它不再起作用了。

我通常导入它:

import { Component, Input, NgZone, ViewChild, Injectable } from '@angular/core';

在构造函数中

public zone: NgZone,

,然后像这样引用它:

this.zone = new NgZone({});

this.afAuth.auth.onAuthStateChanged((user) => {
  this.zone.run(() => {
    if (user) {
      this.rootPage = HomePage
    } else {
      this.rootPage = LoginPage
      console.log("Not logged in")
    }
    this.splashScreen.hide();
  });
});

但是它不再起作用了……

我的package.json调用以下依赖项:

"zone.js": "0.8.18"

有什么想法可能意味着什么,或者我应该怎么做?谢谢!

1 个答案:

答案 0 :(得分:0)

请尝试按照以下步骤操作:

1-导入NgZone import { Component, NgZone, OnInit} from '@angular/core';

2-在班级内部承包商中  constructor(private ngZone: NgZone) {}

3-删除此行this.zone = new NgZone({});

4-保留这些代码行

`this.afAuth.auth.onAuthStateChanged((user) => {
  this.zone.run(() => {
    if (user) {
      this.rootPage = HomePage
    } else {
      this.rootPage = LoginPage
      console.log("Not logged in")
    }
    this.splashScreen.hide();
  });
});`

现在尝试。...