相关疑难解决方法(0)

如何解决“警告:useLayoutEffect在服务器上不执行任何操作”?

这是完整的错误:

警告:useLayoutEffect在服务器上不执行任何操作,因为其效果无法编码为服务器渲染器的输出格式。这将导致初始的非水化用户界面与预期的用户界面不匹配。为避免这种情况,useLayoutEffect仅应在专门在客户端上呈现的组件中使用

      in ForwardRef(ButtonBase)
      in WithStyles(ForwardRef(ButtonBase))
      in ForwardRef(Button)
      in WithStyles(ForwardRef(Button))
      in form
      in div
Run Code Online (Sandbox Code Playgroud)

每次运行测试时都会得到。这是我的测试

/* eslint-disable quotes */
import React from "react"
import { shallow, configure } from "enzyme"
import LoginForm from "../src/components/LoginForm"
import Button from "@material-ui/core/Button"
import Adapter from "enzyme-adapter-react-16"
import { render, fireEvent, cleanup } from "@testing-library/react"

configure({ adapter: new Adapter() })

describe("<LoginForm />", () => {
  let wrapper
  let usernameInput
  let passwordInput
  let signInButton

  // Create initial props that get passed into the component
  const initialProps …
Run Code Online (Sandbox Code Playgroud)

reactjs jestjs material-ui react-testing-library react-hooks

2
推荐指数
4
解决办法
435
查看次数