import React, { useMemo } from 'react';
import { ConfigProvider } from 'antd'; import classNames from 'classnames'; import ReactEcharts from 'echarts-for-react'; import { omit } from 'lodash'; import buildOption from './utils'; const ECharts = React.forwardRef((props, ref) => { const { getPrefixCls } = React.useContext(ConfigProvider.ConfigContext); const prefixCls = getPrefixCls('basic-chart'); const chartProps = omit(props, ['className', 'option']); const option = useMemo(() => { return buildOption(props.option); }, [props.option]); // const chartProps = pick(props, ['option', 'notMerge', 'lazyUpdate', 'style', 'className', 'theme', 'onChartReady', 'loadingOption', 'showLoading', 'onEvents', 'opts']); return ( <ReactEcharts ref={ref} className={classNames(prefixCls, props.className)} option={option} {...chartProps} /> ); }); export default ECharts;