【问题标题】:ReferenceError: Can't find variable: regeneratorRuntime on React [closed]ReferenceError:找不到变量:React上的regeneratorRuntime [关闭]
【发布时间】:2020-07-20 18:49:23
【问题描述】:

我正在尝试使用 react 和 firebase 创建登录。我一直在关注一个教程,问题是这段代码:

const handleLogin = useCallback(
    async event => {
        event.preventDefault();
        const { email, password } = event.target.elements;
        try {
            await firebaseConfig.auth().signInWithEmailAndPassword(email.value, password.value);
            history.push("/citas")
        } catch (error) {
            alert(error);
        }
    },
    [history]
);

给我这个错误:

ReferenceError:找不到变量:regeneratorRuntime

我没有找到任何解决方案,因为我不知道这意味着什么。有什么想法吗?

【问题讨论】:

  • 您怎么知道是您在此处显示的代码导致了问题?您在调试时观察到什么?
  • 浏览器控制台是这么说的。
  • 你怎么知道是这段代码?你做了什么来调试这个?
  • 已修复!无论如何,正如我所说的浏览器控制台说的是那行代码。
  • 我了解控制台日志。在 Stack Overflow 上,预计该问题会提供有关您要完成的工作或您为达到现在的位置所做的工作的一些背景信息。仅仅发布代码和错误消息通常不足以让人们了解正在发生的事情。我们需要足够的信息才能自己重现问题。

标签: reactjs firebase


【解决方案1】:

使用@babel/polyfill 已被正式弃用。由于您使用的是 react 应用程序(并且不依赖于遗留代码库),您可能更喜欢使用以下内容:

npm i --save core-js/stable regenerator-runtime
// ECMA Script Polyfills:
import "core-js/stable";
// Needed for the generator functions which are transpiled from your async await keywords
import "regenerator-runtime/runtime";

Reference

【讨论】:

  • 这个变种对我有用:npm i --save-dev regenerator-runtime(你列出的完整命令给出了 git 错误 - 我认为存储库已被删除?)
  • 感谢@eAi 告诉我,我检查并更新了答案。
【解决方案2】:

npm install --save @babel/polyfill 可能是解决方案,也可以将它们导入到您的文件中。

【讨论】:

  • 效果不错。请问为什么需要这个?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-10-26
  • 2021-10-10
  • 2021-11-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多