未定义取回的sapper



运行npm run dev

时出现此错误
registerFunctions(firebase$1, fetch.bind(self));
^
ReferenceError: fetch is not defined

我想rxfire没有导入fetch,所以我将这一行添加到src/server.ts

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

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

我只是使用rxfiresrc/firebase.ts文件如下:

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问题。

看到我的帖子在这里完整的修复。

我也遇到过类似的问题。

ReferenceError: fetch is not defined
at Module.<anonymous> (/var/task/webpack:/Users/dev/projects/node_modules/@firebase/functions/dist/index.esm.js:702:27)
at __webpack_require__ (/var/task/webpack:/webpack/bootstrap:19:1)
at /var/task/webpack:/webpack/bootstrap:83:1
at Object.<anonymous> (/var/task/families.js:87:10)
at Module._compile (internal/modules/cjs/loader.js:1072:14)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1101:10)
at Module.load (internal/modules/cjs/loader.js:937:32)
at Function.Module._load (internal/modules/cjs/loader.js:778:12)
at Module.require (internal/modules/cjs/loader.js:961:19)
at Module._require.i.require (/var/task/serverless_sdk/index.js:9:73397)
我通过将firebase导入更新到

来解决这个问题。
import * as admin from 'firebase-admin';
import firebase from 'firebase/app';

先安装whatwg-fetch

npm i --save whatwg-fetchyarn add --save whatwg-fetchpnpm i --save whatwg-fetch

创建文件./define-self.js

有这个内容

var global =
(typeof globalThis !== "undefined" && globalThis) ||
(typeof self !== "undefined" && self) ||
(typeof global !== "undefined" && global);
if (!global?.self) {
global.self = global;
}

索引上的。Svelte/_layout.svelte

<script context="module">
import "./define-self";
import "whatwg-fetch";
</script>

相关内容

  • 没有找到相关文章

最新更新