升级firebase-admin至^11.2.0后Firestore serverTimestamp()失效,该如何处理?
解决firebase-admin v11.2.0中serverTimestamp的调用问题
firebase-admin从v11版本开始调整了模块化导入结构,原来通过firestore.FieldValue访问的方式已不再适用,你可以通过以下两种方式正确获取serverTimestamp:
方式一:直接导入FieldValue
从firebase-admin/firestore子模块单独导入FieldValue:
import { FieldValue } from 'firebase-admin/firestore'; const serverTimestamp = FieldValue.serverTimestamp();
方式二:通过初始化后的admin实例访问
如果你的项目中已经初始化了firebase-admin实例,也可以通过admin.firestore来访问FieldValue:
import admin from 'firebase-admin'; // 确保已完成admin初始化(如未初始化需先调用admin.initializeApp()) const serverTimestamp = admin.firestore.FieldValue.serverTimestamp();
v11版本对模块导出做了更清晰的拆分,将Firestore相关的核心类型和工具都归到了firebase-admin/firestore子模块下,这样的设计更符合现代ES模块的规范。
内容的提问来源于stack exchange,提问作者Max
相关产品推荐
相关产品推荐

