Firebase改用import语法后,如何正确导出索引文件以完成部署?
Firebase函数ESM导出部署失败的原因及解决办法
问题核心原因
Firebase Cloud Functions 对ESM模块的导出要求使用具名导出,而非默认导出。你之前用exports.expressApi属于CommonJS的具名导出,Firebase可以识别对应的函数名称;但改成export default expressApi后,Firebase无法将默认导出映射到具体的云端函数标识,导致部署时无法识别要部署的函数。
解决步骤
改用具名导出
将导出代码修改为具名导出形式,直接匹配Firebase需要的函数名称:export const expressApi = functions.https.onRequest(app);核对firebase.json配置
确保firebase.json中的函数target名称和你导出的函数名完全一致,示例配置如下:{ "functions": { "source": "functions", "target": "expressApi" } }升级Firebase CLI
旧版本Firebase CLI对ESM模块的支持存在兼容性问题,执行以下命令升级到最新版本:npm install -g firebase-tools
内容的提问来源于stack exchange,提问作者boredProjects
相关产品推荐
相关产品推荐

