导入 AngularFireAuth 的正确方法是什么?

What is the correct way of importing AngularFireAuth?

我试过 official doc 中提到的方法,如下所示,效果很好。

import { AngularFireAuth } from '@angular/fire/auth

但是 VSC 工具会像下面这样自动建议,它也可以正常工作。

import { AngularFireAuth } from '@angular/fire/auth/auth

上述版本是否等同?如果不是,分别是什么?导入 AngularFireAuth 的最佳方式是什么?

根据源码:

  • @angular/fire/auth 导入会从 this file which in TypeScript also called barrel.

    导入
  • @angular/fire/auth/auth 导入会从 this file

    导入

结论 - 两次导入是等价的,因为桶 re-exports 同一个文件。

关于“最佳方式”,我总是更喜欢从包的 public API 中导入,因为这些导出实际上是供用户使用的。