带有 firebase 的工兵 - 未定义获取

问题描述

运行 npm run dev 时出现此错误

registerFunctions(firebase$1,fetch.bind(self));
                              ^
ReferenceError: fetch is not defined

我认为 rxfire 不会导入 fetch,所以我将此行添加src/server.ts

global['fetch'] = require('node-fetch');

错误仍然存​​在,有什么建议吗?我想我根本不需要添加这个。

我只是在 src/firebase.ts 文件中使用 rxfire,如下所示:

import firebase from "firebase/app";
import "firebase/auth";
import "firebase/firestore";
import "firebase/functions"; 
import * as config from "./config.json";

firebase.initializeApp(config);

export const auth = firebase.auth();
export const googleProvider = new firebase.auth.GoogleAuthProvider();

export const db = firebase.firestore();
export const functions = firebase.functions();

谢谢,
J

解决方法

这是在我的 firebase.ts 文件中尝试在服务器端 import "firebase/functions" 时导致的特定错误。

我能够通过将 import 'isomorphic-unfetch' 添加到 server.ts 来解决它。但是,然后我收到了这个错误:

registerFunctions(firebase$1,fetch.bind(self));
                                         ^

ReferenceError: self is not defined

我意识到后端显然没有要绑定的对象,所以我找到了解决方法。我不需要在后端导入它,这是一个更大的 Sapper Firebase 问题。

请参阅 my post here 以获得完整的修复。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...