enzymejs/enzyme

getDerivedStateFromProps called from setState

Open

#2,078 创建于 2019年4月2日

在 GitHub 查看
 (2 评论) (3 反应) (0 负责人)JavaScript (19,979 star) (2,016 fork)batch import
bughelp wanted

描述

Current behavior

getDerivedStateFromProps is being called from within setState, instead of before render, which overwrites the state and is inconsistent with react behavior. Please see attached codesandbox. There is a FloatInput.spec.js file with a unit test to show the behavior.

Expected behavior

getDerivedStateFromProps should be called before render not from setState.

Your environment

https://codesandbox.io/s/vqrm0r0r30

API

  • [x ] shallow
  • mount
  • render

Version

library version
enzyme 3.9.0
react 16.8.3
react-dom 16.8.3
react-test-renderer
adapter (below)

Adapter

  • [x ] enzyme-adapter-react-16
  • enzyme-adapter-react-16.3
  • enzyme-adapter-react-16.2
  • enzyme-adapter-react-16.1
  • enzyme-adapter-react-15
  • enzyme-adapter-react-15.4
  • enzyme-adapter-react-14
  • enzyme-adapter-react-13
  • enzyme-adapter-react-helper
  • others ( )

贡献者指南