问题描述
运行 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 以获得完整的修复。