【发布时间】:2020-08-03 15:41:27
【问题描述】:
我收到了 gatsby develop 错误。它与这个非常相似:https://github.com/firebase/firebase-js-sdk/issues/2222,但我收到了 gatsby develop 错误,而不是 gatsby build。我做了很多研究,但找不到有效的解决方案。 一开始我遇到了 gatsby build 的问题,就像在这篇文章中:https://github.com/firebase/firebase-js-sdk/issues/2222,但我用自定义的 onCreateWebpackConfig 解决了它(你可以在下面找到它)。
堆栈: - 盖茨比 - Firebase(可能有错误) - 还原
我也删除了 .cache 和 node_modules 并重新安装了所有东西,但是没有用。
错误:
There was an error compiling the html.js component for the development server.
See our docs page on debugging HTML builds for help https://gatsby.dev/debug-html ReferenceError: IDBIndex is not defined
]);
86 |
> 87 | proxyRequestMethods(Index, '_index', IDBIndex, [
| ^
88 | 'get',
89 | 'getKey',
90 | 'getAll',
WebpackError: ReferenceError: IDBIndex is not defined
- idb.mjs:87 Module../node_modules/idb/lib/idb.mjs
node_modules/idb/lib/idb.mjs:87:1
- index.esm.js:1 Module../node_modules/@firebase/installations/dist/index.esm.js
node_modules/@firebase/installations/dist/index.esm.js:1:1
- index.esm.js:1 Module../node_modules/@firebase/analytics/dist/index.esm.js
node_modules/@firebase/analytics/dist/index.esm.js:1:1
- index.esm.js:1 Module../node_modules/firebase/analytics/dist/index.esm.js
node_modules/firebase/analytics/dist/index.esm.js:1:1
- index.ts:1 Module../src/firebase/index.ts
src/firebase/index.ts:1:1
- index.esm.js:32 emit
node_modules/@firebase/analytics/dist/index.esm.js:32:1
我的 gatsby-node 文件:
exports.onCreateWebpackConfig = ({ stage, actions, getConfig }) => {
if (stage === 'build-html') {
actions.setWebpackConfig({
externals: getConfig().externals.concat(function(context, request, callback) {
const regex = /^@?firebase(\/(.+))?/;
if (regex.test(request)) {
return callback(null, `umd ${request}`);
}
callback();
}),
});
}
};
我的 firebase 依赖项:
"@firebase/firestore-types": "^1.10.1",
"firebase": "^7.13.1",
"firebase-admin": "^8.10.0",
"firebase-functions": "^3.5.0",
"firebase-tools": "^7.16.1",
Firebase 索引文件:
import firebase from 'firebase/app';
import 'firebase/firestore';
import 'firebase/auth';
import 'firebase/storage';
import 'firebase/analytics';
const firebaseConfig = {...};
firebase.initializeApp(firebaseConfig);
export const firestore = firebase.firestore();
export const auth = firebase.auth();
export const storage = firebase.storage();
项目回购:https://github.com/olafsulich/Projecty
在 Github 问题上发帖:https://github.com/firebase/firebase-js-sdk/issues/2946
提前致谢。
【问题讨论】:
标签: firebase webpack google-cloud-firestore react-redux gatsby