const submitHandler = async (e) => {
    e.preventDefault();
    setErr("");
    try {
      await signUp(email, password, firstName, lastName);
      err.length === 0 &&
        setTimeout(() => {
          navigate("/");
        }, [2000]);
    } catch (error) {
      console.log(error.message);
      setErr(error.message);
    }
  };

当我提交带有现有邮箱的表单时,我收到了错误,但Catch语句没有显示error.message或设置state

这是正常的error而不是消息

Uncaught (in promise) FirebaseError: Firebase: Error (auth/email-already-in-use).
    at createErrorInternal (assert.ts:122:1)
    at _createError (assert.ts:83:1)
    at _makeTaggedError (index.ts:261:1)
    at _performFetchWithErrorHandling (index.ts:161:1)
    at async _performSignInRequest (index.ts:191:1)
    at async createUserWithEmailAndPassword (email_and_password.ts:23

推荐答案

首先,你确定这个signUp函数会抛出错误吗?

因为这个错误似乎正在其他地方处理..为了捕捉错误,首先需要抛出它.

例如,如果signUp中有一个try catch,你需要再次throw这个误差,才能在submitHandler中得到catch.

Reactjs相关问答推荐

Reaction Axios多部分/表单-数据数组不工作

无法从正在使用Reaction的Electron 商务store 项目中的购物车中删除项目

Tailwind不使用@apply classes构建,并强制使用类似于移动的viewport

如何将图像(在代码中称为自己)定位在蓝色圈内的点上?我正在使用material UI和Reaction

FireBase未与Reaction应用程序连接

Reaction-路由-DOM v6与v5

如何在React组件中自动更新图表数据?

无法通过 fetch 获取数据到上下文中

如何在 ChartJS 中创建此图表?在 NEXTjs 和 TSX 中

ReactJS 中的图像加载顺序

如何让 useEffect 在 React.JS 中只运行一次?

在 reactJS 中导航时页面重新加载

如何防止开发人员使用 ESLint 在 React 项目中使用特定的钩子?

使用状态与复选框不同步

位于组件material-ui中的TextField中的 map 功能不起作用

React Native PermissionsAndroid 不包括 READ_MEDIA_IMAGES.如何解决这个问题?

不能在我的代码中使用 .给我一个警告!有人知道解决方案吗?

在视图列表上react 本机无限循环的反弹动画?

如何防止 mui x-date-picker 被截断?

如何在 React 中制作动画?