技术栈

react taro echarts(taro-react-echarts) 微信小程序

          <Echarts
            echarts={echarts}
            option={option.current}
            ref={echartsRef as any}
            onChartReady={(chart) => {
              // 进行初始化设置
              chart.setOption(option.current, true);
            }}
          />

要点1

onChartReady={(chart) => {
    // 进行初始化设置
    chart.setOption(option.current, true);
}

定义option

  const option = useRef({...})

监听接口数据变化给option赋值

  useEffect(() => {

    const newOption = {...};

    option.current = newOption;

    setTime(new Date().getTime())

  }, [priceData, address]);

问题

接口数据获取到了 图表不更新 

但是 useEffect 监听到了 有打印

影响 :

有变量address 是通过弹框更改的

点击打开设置address的弹框 图表数据会更新

解决失败:

1.给 echarts 添加key 无效

2.在useEffect添加实例销毁 无效

解决成功:

添加变量time,在useEffect添加

setTime(new Date().getTime())

为什么能解决? 不知道

欢迎讨论

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐