首页 文章

在提供程序方法中使用代码时,Firebase会返回未定义的值

提问于
浏览
0

我在离子页面上使用firebase代码从firebase db中检索值,这项工作正常 .

我计划将firebase代码移动到提供程序类中,并在我的离子页面中调用提供程序类方法 . 因此,我不是从页面调用firebase,而是从页面调用provider,提供者将调用firebase .

当我在提供程序中实现一个方法,如下所示,并从离子页面调用它时,provider方法返回undefined . 我猜这是因为firebase的异步性质,甚至在设置值之前就执行了返回 . 我如何理解这个概念并解决这个问题?我在想 - 而不是使用.on;我应该使用会返回一个promise的.once,但不确定我需要将返回行放在firebase代码/ promise之外,那么如何让返回等待呢?

1 回答

  • 0

    这可以通过使用.once并直接返回语句来解决,如下所示 . 然后,调用者使用.then关键字从promise中检索数据 .

相关问题