javascript - React 协调 - props diff

标签 javascript jquery reactjs

我将 jQuery Flotchart 组件打包为 React 组件,每当组件属性发生更改时,我都需要调用图表实例的 plot 方法。

我最终得到的是 shouldComponentUpdate 钩子(Hook)实现,它将新 Prop 与旧 Prop 进行比较。

但是React documentation says作为协调过程的一部分,React 本身会将新的组件 props 与旧的组件 props 进行比较,因此 React 已经应该拥有有关某些 props 是否更改的信息。这意味着,如果我在 shouldComponentUpdate 中对 props 进行浅层比较,我就会复制 React 中已经内置的功能,对吗?如果是这样,我如何获取有关属性是否从 React 更改的信息,而不需要在 shouldComponentUpdate 中复制它?

最佳答案

您正在寻找的函数是componentWillReceiveProps。根据reactjs documentation ,此方法将接收下一组组件属性作为 nextProps

您可以比较属性,例如

if (nextProps.myProperty === this.props.myProperty) {//doSomething}

关于javascript - React 协调 - props diff,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35524817/

相关文章:

html - 想要使用 HTML5 在 React JavaScript 中打开自定义弹出窗口

javascript - 通过视口(viewport)检测到 div 时的动画效果

javascript - 自动填充数据被 javascript 的 onchange 事件覆盖

javascript - ASP.NET MVC jQuery Ajax - 从模式对话框关闭并刷新父表

使用输入和复选框的 jQuery 过滤器列表,应优先考虑输入

javascript - React Hooks 可以有方法吗?

javascript - 带有歌曲的Javascript和HTML5音频播放器可供选择

javascript 日期时间比较

javascript - 使用 Jasmine 对输入字段进行单元测试

javascript - 在变量声明中 react 大括号