Firebase 部署功能 - 无法更新功能 - Firebase 管理员 this.appStore?.removeApp(this.name);

njh*_*jho 5 firebase

从 3.x升级firebase-functions到 4.x,从firebase-admin9.x 升级到 11.x,部署不再起作用

部署时收到此错误:

Error: There was an error deploying functions:
- Error Failed to update function
Run Code Online (Sandbox Code Playgroud)

在日志浏览器中有

Provided module can't be loaded.
Is there a syntax error in your code?
Detailed stack trace: /workspace/node_modules/firebase-admin/lib/app/firebase-app.js:174
        this.appStore?.removeApp(this.name);
SyntaxError: Unexpected token '.'
    at wrapSafe (internal/modules/cjs/loader.js:915:16)
    at Module._compile (internal/modules/cjs/loader.js:963:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
    at Module.load (internal/modules/cjs/loader.js:863:32)
    at Function.Module._load (internal/modules/cjs/loader.js:708:14)
    at Module.require (internal/modules/cjs/loader.js:887:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at Object.<anonymous> (/workspace/node_modules/firebase-admin/lib/app/lifecycle.js:25:24)
    at Module._compile (internal/modules/cjs/loader.js:999:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)
Run Code Online (Sandbox Code Playgroud)

我已经更新了 package.json 以具有以下节点引擎,但部署时仍然存在问题

"engine" 16
Run Code Online (Sandbox Code Playgroud)

有人有什么想法吗?

njh*_*jho 1

如果我按照文档进行操作,似乎还有更多要求。

以前的:

import admin = require('firebase-admin');
export const app = admin.initializeApp({
  credential: admin.credential.applicationDefault(),
});
Run Code Online (Sandbox Code Playgroud)

新修复:

import { applicationDefault, initializeApp } from 'firebase-admin/app';
export const app = initializeApp({
  credential: applicationDefault(),
});
Run Code Online (Sandbox Code Playgroud)