hustcc / hustcc/echarts-for-react
0ab3861 的改动导致在 ref 和 effect 中无法拿到有效的 ECharts 实例
- Dominant language
- TypeScript
- Stars
- 5k
- Forks
- 650
- PR merge metrics
- No merged PRs in 30d
Description
```tsx
import EChartsReact from "echarts-for-react";
import { useEffect, useRef } from "react";
export default function App() {
const echartsRef = useRef();
useEffect(() => {
const echartsReact = echartsRef.current;
if (!echartsReact) {
return;
}
console.log("effect run", echartsReact.getEchartsInstance());
}, []);
return (
{
echartsRef.current = ref;
if (!ref) {
return;
}
console.log("ref connected", ref.getEchartsInstance());
}}
option={{}}
onChartReady={(instance) => {
console.log("chart ready", instance);
}}
/>
);
}
```
[](https://codesandbox.io/p/devbox/solitary-voice-yn2njm)
在 3.0.2,上述代码三次输出的 ECharts 实例都是同一个有效的实例。而更新到 3.0.4 之后,在 ref 和 effect 里都只能拿到[这一行](https://github.com/hustcc/echarts-for-react/blob/373982283c60017f00fe154068575b0bd80c06f8/src/core.tsx#L97)创建的临时 ECharts 实例,而没法拿到之后创建的真实实例,只有 `onChartReady` 里能拿到有效的实例。这样的修改破坏了之前代码的兼容性。
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.