hejianhao
2026-01-09 be5d0750301ebad72f9f7f94e3b878bce43d4ec8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import { useEffect } from 'react';
import * as echarts from 'echarts';
 
const useEcharts = (ref, option) => {
    useEffect(() => {
        if (!ref.current) return;
        const chart = echarts.init(ref.current, null, { renderer: 'canvas' });
        chart.setOption(option);
        window.addEventListener('resize', chart.resize);
        return () => {
            chart.dispose();
            window.removeEventListener('resize', chart.resize);
        };
    }, [ref, option]);
};
 
export default useEcharts;