Reactjs 为什么onDrop事件会自动重新渲染所有内容?
“onDrop”事件似乎正在强制更新组件。 我想自己控制更改和更新 drop事件以异步方式更新状态数据,因为其中涉及一些延迟加载。 当所有更改完成后,我希望显式地调用父级上的onChanged回调,但此时已经执行了不必要的重新呈现 有没有办法防止这种自动重新渲染 难道组件更新不应该要求该州的某个“isDroping”旗王吗? 否则它只会分散数据,不是吗?这不是更新真正的功能吗?您可以使用它来控制组件是否重新呈现;这将需要在拖动周围维护内部状态/逻辑,这可能是必要的,具体取决于您的情况Reactjs 为什么onDrop事件会自动重新渲染所有内容?,reactjs,Reactjs,“onDrop”事件似乎正在强制更新组件。 我想自己控制更改和更新 drop事件以异步方式更新状态数据,因为其中涉及一些延迟加载。 当所有更改完成后,我希望显式地调用父级上的onChanged回调,但此时已经执行了不必要的重新呈现 有没有办法防止这种自动重新渲染 难道组件更新不应该要求该州的某个“isDroping”旗王吗? 否则它只会分散数据,不是吗?这不是更新真正的功能吗?您可以使用它来控制组件是否重新呈现;这将需要在拖动周围维护内部状态/逻辑,这可能是必要的,具体取决于您的情况 话虽如此,
话虽如此,听起来您的代码中可能还有其他东西。如果呈现的数据确实没有差异,React应该足够智能,不会重新呈现。我的坏。我忘了在另一个(dragEnd)事件中停止播放我在理解“shouldComponentUpdate”策略时遇到问题。我更新了问题以解决这一困惑。@RuiFortes我稍微更新了我的答案。在JSBin中有一个单独的例子会非常有帮助,因为我怀疑这里可能发生了其他事情,导致react重新渲染。你说得对……我忘了阻止Dragent事件