Javascript React/React Native订阅onChange最有效的方式
我在使用MPAndroidChart的包装器(react native charts wrapper)时正在执行一个react native项目,但我认为这个问题超出了我的用例范围 在呈现两个图表的组件中,我使用charts onChange prop设置第二个图表的位置,反之亦然,因为它们在相同的时间尺度上显示数据(请参见gif)。方法如下:Javascript React/React Native订阅onChange最有效的方式,javascript,reactjs,react-native,charts,onchange,Javascript,Reactjs,React Native,Charts,Onchange,我在使用MPAndroidChart的包装器(react native charts wrapper)时正在执行一个react native项目,但我认为这个问题超出了我的用例范围 在呈现两个图表的组件中,我使用charts onChange prop设置第二个图表的位置,反之亦然,因为它们在相同的时间尺度上显示数据(请参见gif)。方法如下: syncToChart2(event) { if ( event.action === 'chartScaled' ||
syncToChart2(event) {
if (
event.action === 'chartScaled' ||
event.action === 'chartTranslated'
) {
let { scaleX, scaleY, centerX, centerY } = event;
this.chart2Zoom = {
scaleX: scaleX,
scaleY: scaleY,
xValue: centerX,
yValue: centerY
};
}
}
目前,图形与转换同步的速度太慢,如下所示:
我以前使用setState订阅更改,但这比使用MobX observable decorator慢,其效果可以在gif中看到。我仍然希望改进代码
所以问题是,什么是订阅经常发生且需要立即反映的变化的最有效方式 可能的解决方案是处理此类事件(滚动等)