firebase/firestore 不再支持方法链了吗?

Does firebase/firestore no longer support method chaining?

我已经有一段时间没有使用 firebase 了,看起来情况发生了变化。以前,我可以做这样的事情(使用方法链):

const app = firebase.initializeApp(firebaseConfig);
const db = app.firestore();

const itemQuerySnapshot = db
    .collection('companies')
    .doc(data.userData.company)
    .collection('items')
    .get()

但现在,它似乎不再受支持(或者 Typescript 类型可能已针对最新版本进行了更改)。在最新版本中,方法链接出现在画面之外。

所以我的问题是:哪个版本的 firebase 支持上面代码中显示的那种方法链接,以便我可以降级到它。 如果有人可以帮助解释最新版本的 firebase 中使用的当前模式的好处(如果有的话),我将不胜感激。

从你的问题来看还不是很清楚,但我假设你已经升级到 SDK 的 v9,它使用了新的模块化语法。

如果您想使用旧语法的新 SDK,您可以使用其 compat 模块,如 here 所述。

如果您想完全坚持使用旧版 SDK,8.x 是支持旧语法的最新 SDK 版本。

我建议在此处阅读有关新模块化 SDK 的更多信息: