【问题标题】:Disable unstable_batchedUpdates() on event handlers in React在 React 中的事件处理程序上禁用不稳定的批处理更新()
【发布时间】:2020-03-25 15:41:58
【问题描述】:

我正在尝试在 React 中禁用 unstable_batchedUpdates()。我开始认为这是不可能的。这就是我正在尝试的:

ReactDOM.unstable_batchedUpdates = callback => callback()

我正在寻找一种解决方案,它可以帮助我避免使用 setTimeout() 将代码包装在事件处理程序中:

<div onClick={() => {
  setTimeout(() => {
     setInputVisible(true)

     inputRef.current.focus()
  })
}}>

【问题讨论】:

  • 我认为ReactDOM.unstable_batchedUpdates 只是一个实验性的 API,供用户在 React 事件处理程序之外运行批量更新。这些事件处理程序内部是否真的也依赖ReactDOM.unstable_batchedUpdates?我原以为他们宁愿依赖“稳定”的内部解决方案。

标签: reactjs


【解决方案1】:

我在 GitHub 上与 Dan Abramov 的对话终于取得了进展。在此处发布对话以供参考:Batching makes it difficult to perform imperative actions like focus

【讨论】:

    猜你喜欢
    • 2020-09-26
    • 2018-01-25
    • 2019-10-28
    • 1970-01-01
    • 2017-10-12
    • 1970-01-01
    • 1970-01-01
    • 2018-09-30
    • 1970-01-01
    相关资源
    最近更新 更多