Angularjs angularfire中$getAuth和$onAuth之间的差异

Angularjs angularfire中$getAuth和$onAuth之间的差异,angularjs,authentication,firebase,angularfire,Angularjs,Authentication,Firebase,Angularfire,我正在阅读angularfire文档,发现了firebase提供的两个类似服务$getAuth和$onAuth,它们都是为检查用户身份验证而编写的。但我找不到两者之间的任何区别,有人能给我描述一下吗 我还想知道使用这些服务的最佳方案是什么。谢谢 正如$getAuth()的文档所述: 同步检索客户端的当前身份验证状态 而对于$onAuth(),它说: 侦听对客户端身份验证状态的更改。当客户端的身份验证状态更改时,将触发提供的回调 因此,如果需要知道用户是否经过身份验证,可以在代码中调用$getAt

我正在阅读
angularfire
文档,发现了
firebase
提供的两个类似服务
$getAuth
$onAuth
,它们都是为检查用户身份验证而编写的。但我找不到两者之间的任何区别,有人能给我描述一下吗

我还想知道使用这些服务的最佳方案是什么。谢谢


正如
$getAuth()的文档所述:

同步检索客户端的当前身份验证状态

而对于
$onAuth()
,它说:

侦听对客户端身份验证状态的更改。当客户端的身份验证状态更改时,将触发提供的回调

因此,如果需要知道用户是否经过身份验证,可以在代码中调用
$getAth()
。假设您希望在对用户进行身份验证时在计算中使用不同的价格:

var productPrice = 50;
$scope.price = auth.$getAuth() ? 0.8 * productPrice : productPrice;
另一方面,如果您希望根据用户的身份验证时间执行某些操作,则可以使用
$onAuth()
。一个典型的例子是在用户登录/注销时将用户路由到不同的URL