Error handling 检查推送是否成功-angularfire2

Error handling 检查推送是否成功-angularfire2,error-handling,ionic2,angularfire2,Error Handling,Ionic2,Angularfire2,目前,我开发了一个与Firebase数据库通信的Ionic2应用程序。在更新节点时,它有时工作,有时不工作。 因此,我厌倦了用以下代码处理错误: this.db.list("/Events/" + this.eventID+ "/teilnehmer").push(this.userID) .then(resolve => { console.log('success'); }, reject => { cons

目前,我开发了一个与Firebase数据库通信的Ionic2应用程序。在更新节点时,它有时工作,有时不工作。 因此,我厌倦了用以下代码处理错误:

this.db.list("/Events/" + this.eventID+ "/teilnehmer").push(this.userID)
        .then(resolve => {
          console.log('success');
        }, reject => {
          console.log('error');
        })
        .catch(reject => {
          console.log('catch');
        });
但即使我断开我的互联网连接,也不会抛出错误。
你们中有人知道如果推送不成功,我如何处理错误吗?

我遇到过推送不返回承诺的情况,所以我在github上提出了问题,但不幸的是问题没有得到解决,我通过电子邮件联系了firebase支持,支持团队审查了我的问题并检查了我发送的代码,并回答代码中无需执行任何操作,并建议我清除手机的存储缓存,我也这样做了,问题得到解决,

这是来自firebase支持的邮件

你好,xxxx

我建议您在继续之前尝试清除手机缓存 同样,它的内存可能太高。要执行此操作,请转到:设置-> 存储->缓存数据。选择它,然后选择ok(用于清除 缓存)。另外,请在Github上提出相同的问题时检查此问题 并由我们的一名工程师回答

如果在尝试提出的建议后问题仍然存在,请 给我一个我们可以用来 模拟这一点,可能是一个plunkr或JSFIDLE代码,或者来自 可以演示问题的临时代码

你好,xxxx


我也遇到过同样的情况,push有时不会返回承诺,因此我在github上提出了问题,但不幸的是问题没有得到解决,我通过电子邮件联系了firebase支持,支持团队审查了我的问题并检查了我发送的代码,并回答代码中没有任何内容,并建议我清除手机的存储缓存,我也这样做了,问题得到解决,

这是来自firebase支持的邮件

你好,xxxx

我建议您在继续之前尝试清除手机缓存 同样,它的内存可能太高。要执行此操作,请转到:设置-> 存储->缓存数据。选择它,然后选择ok(用于清除 缓存)。另外,请在Github上提出相同的问题时检查此问题 并由我们的一名工程师回答

如果在尝试提出的建议后问题仍然存在,请 给我一个我们可以用来 模拟这一点,可能是一个plunkr或JSFIDLE代码,或者来自 可以演示问题的临时代码

你好,xxxx


如果你想处理这个问题,你可以考虑设置超时,因为如果FialBASE不返回任何东西,承诺将只停留在“未决”中,解析,拒绝/捕获将永远不会被触发。


你可以这样做,比如答应。race():也检查这个线程:

如果你想处理这个问题,你可以考虑设置超时,因为如果FialBASE不返回任何东西,这个承诺将停留在“未决”,并且解决,拒绝/ catch永远不会被触发。 例如,您可以使用Promise.race():也可以检查此线程: