尝试更新时,第三方组件将状态重置为初始值

问题描述

我使用 useState() 将一组值存储在 App.jsx 中。我通过该数组映射为每个孩子创建一个 mathquill 框。每个 mathquill 框都传递一个元素和一个修改该元素的函数。状态更新正常,直到您尝试更新第二个框 - 然后状态将重置为认值。这个问题存在于多个第三方库中,但对于简单的 html input 元素不存在。

示例:https://codesandbox.io/s/flamboyant-sun-drdfg

解决方法

使用 setValue() 函数的前一个 value 参数修复了该问题。 https://codesandbox.io/s/unruffled-engelbart-rxsld?file=/src/App.js