WebPackageError:Firebase/app的引用错误

WebPackageError:Firebase/app的引用错误,firebase,gitlab-ci,gatsby,Firebase,Gitlab Ci,Gatsby,总结问题: 当我将提交合并到Gitlab并运行管道时,在尝试部署时会出现脚本失败。更具体地说:webpackeror:ReferenceError:\uuuu WEBPACK\u EXTERNAL\u MODULE\u firebase\u app\uuuuu未定义 -这篇文章的目的是希望能更好地理解我在这里做错了什么,因为我正试图通过错误来找到自己的解决方案,但迄今为止还没有成功。 -预期的结果是,由于管道在此之前一直在运行,它将继续这样做。这个管道失败的奇怪之处在于,我并没有在导致失败的合并

总结问题: 当我将提交合并到Gitlab并运行管道时,在尝试部署时会出现脚本失败。更具体地说:
webpackeror:ReferenceError:\uuuu WEBPACK\u EXTERNAL\u MODULE\u firebase\u app\uuuuu未定义
-这篇文章的目的是希望能更好地理解我在这里做错了什么,因为我正试图通过错误来找到自己的解决方案,但迄今为止还没有成功。 -预期的结果是,由于管道在此之前一直在运行,它将继续这样做。这个管道失败的奇怪之处在于,我并没有在导致失败的合并上安装任何软件包。我继续更新了软件包,以前的一些错误也消失了(例如,夏普库出现了一次故障,现在已经消失),但现在firebase应用程序已经成为关注的焦点。 我在输出中看到的唯一实际错误是
webpackeror:ReferenceError:\uuuuu WEBPACK\u EXTERNAL\u MODULE\u firebase\u app\uuuuuuu未定义
,然后是
错误:作业失败:退出代码1

  • 描述您的尝试:如前所述,我最初认为,如果我只是更新所有依赖项,这将帮助我更好地了解出了什么问题。当我注意到管道上比以前有了更多的进展时,我认为我的思路是正确的,出现了这个问题
    error(node:260)[DEP_WEBPACK\u EXTERNALS\u FUNCTION\u PARAMETERS]DeprecationWarning:EXTERNALS函数的定义应该像({context,request},cb)=>{…}(使用`node--trace deprecation…`显示警告的创建位置)
    因此,我按照错误消息的建议,在我的gatsby-node.js文件中的
    context,request
    周围添加了花括号。在下一次管道尝试中,该错误消失了,但
    webpackeror:ReferenceError:\uu网页包\外部模块\ firebase \应用程序\未定义。
    仍然存在

  • 显示一些代码: 我认为gatsby-node.js文件与此相关,因此它是:


  • 如果需要,我可以提供其他详细信息,并感谢任何人提供的任何建议。谢谢!

    将盖茨比降级回v2(以及所有相关的盖茨比插件)错误消失了

    这对您有帮助吗?不完全是,构建阶段是错误发生的地方,而不是在使用Gatsby v3进行开发时?是的,我最近刚更新到v3,正在阅读他们的文档。我还遇到了一些v3的网页包问题(与Firebase无关,但类似的输出消息).希望你能尽快找到解决办法,但我有点不知所措/
    exports.onCreateWebpackConfig = ({ stage, actions, getConfig }) => {
      if (stage === 'build-html') {
        actions.setWebpackConfig({
          // Don't bundle modules that reference browser globals such as `window` and `IDBIndex` during SSR.
          // See: https://github.com/gatsbyjs/gatsby/issues/17725
          externals: getConfig().externals.concat(function ({ _context, request }, callback) {
            // Exclude bundling firebase* and react-firebase*
            // These are instead required at runtime.
            if (/^@?(react-)?firebase(.*)/.test(request)) {
              console.log('Excluding bundling of: ' + request);
              return callback(null, 'umd ' + request);
            }
            callback();
          }),
        });
      }
    };