我有一个 React 应用程序,其中包含一个表单,该表单在服务器端呈现,并预先填充了用户正在进行的工作。问题在于,如果用户在应用加载之前编辑表单中的值,则应用不会意识到更改。当用户保存时,服务器渲染的未改变的数据被重新保存,用户的新数据被删除,尽管它仍然显示在表单中。简而言之,在 React 和初始加载时替换的标记中的输入值之间似乎存在脱节。
我想我可以将 refs 放在每个输入上并将它们的值复制到 componentDidMount 上的应用程序状态中,但必须有更好的方法。有没有其他人解决过这个问题?
更新
我现在认为解决这个问题的最好方法是让 React 在创建校验和时考虑输入值。GH 问题:https : //github.com/facebook/react/issues/4293