【问题标题】:Express with Firebase require() throws errorExpress with Firebase require() 抛出错误
【发布时间】:2021-12-02 00:08:56
【问题描述】:

我有一个 Express 应用程序,我正在尝试连接到 Firebase。

我的控制台当前抛出此错误:

C:\Users\Tyler\Desktop\Dev\food-bank\app.cjs:19
const firebase = initializeApp(firebaseConfig);
                 ^

TypeError: initializeApp is not a function
    at Object.<anonymous> (C:\Users\Tyler\Desktop\Dev\food-bank\app.cjs:19:18)
    at Module._compile (node:internal/modules/cjs/loader:1095:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1124:10)
    at Module.load (node:internal/modules/cjs/loader:975:32)
    at Function.Module._load (node:internal/modules/cjs/loader:816:12)
    at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:79:12)
    at node:internal/main/run_main_module:17:47
[nodemon] app crashed - waiting for file changes before starting...

有问题的代码在这里:

let initializeApp = require('./node_modules/@firebase/app');

我不想更改我的package.json 以使用导入语句。 Firebase 文档有 import module 语句,但因为我使用的是 Express,所以我想使用 require 语句。

我该如何解决这个问题?

【问题讨论】:

    标签: javascript node.js firebase express


    【解决方案1】:

    我认为您只是缺少 require 语句中的解构括号:

    let { initializeApp } = require('./node_modules/@firebase/app');
    

    另外,通常你应该能够简单地使用require('@firebase/app') 而不是在node_modules 中指定包的相对路径:

        let { initializeApp } = require('@firebase/app');
    

    【讨论】:

      猜你喜欢
      • 2012-02-10
      • 1970-01-01
      • 1970-01-01
      • 2018-07-07
      • 2023-04-03
      • 1970-01-01
      • 1970-01-01
      • 2020-08-10
      • 2018-01-14
      相关资源
      最近更新 更多