当前位置:首页 > React

react中如何引入echarts

2026-03-11 02:08:19React

安装 ECharts 依赖

在 React 项目中安装 echartsecharts-for-react(封装好的 React 组件库):

npm install echarts echarts-for-react

基础引入方式

通过 echarts-for-react 直接引入 ECharts 组件:

import React from 'react';
import ReactECharts from 'echarts-for-react';

function App() {
  const option = {
    xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed'] },
    yAxis: { type: 'value' },
    series: [{ data: [820, 932, 901], type: 'line' }]
  };

  return <ReactECharts option={option} />;
}

按需引入模块(优化体积)

ECharts 默认全量引入,可通过按需引入减小打包体积:

import * as echarts from 'echarts/core';
import { LineChart } from 'echarts/charts';
import { GridComponent, TitleComponent } from 'echarts/components';
import { CanvasRenderer } from 'echarts/renderers';
import ReactECharts from 'echarts-for-react';

// 注册必要组件
echarts.use([LineChart, GridComponent, TitleComponent, CanvasRenderer]);

function App() {
  const option = { /* 同上 */ };
  return <ReactECharts echarts={echarts} option={option} />;
}

动态加载主题

如需使用自定义主题,先注册主题文件:

import * as echarts from 'echarts';
import themeJson from './theme.json'; // 主题文件

// 注册主题
echarts.registerTheme('myTheme', themeJson);

// 使用时传入主题名
<ReactECharts theme="myTheme" option={option} />

手动初始化图表(非组件方式)

直接使用原生 ECharts API:

import React, { useEffect, useRef } from 'react';
import * as echarts from 'echarts';

function Chart() {
  const chartRef = useRef(null);

  useEffect(() => {
    const chart = echarts.init(chartRef.current);
    chart.setOption(option);
    return () => chart.dispose(); // 组件卸载时销毁
  }, []);

  return <div ref={chartRef} style={{ width: '100%', height: 400 }} />;
}

响应式处理

监听窗口变化自动调整图表大小:

react中如何引入echarts

useEffect(() => {
  const chart = echarts.init(chartRef.current);
  const resizeHandler = () => chart.resize();
  window.addEventListener('resize', resizeHandler);
  return () => {
    window.removeEventListener('resize', resizeHandler);
    chart.dispose();
  };
}, []);

注意事项

  • 服务端渲染(SSR)需动态导入 ECharts,避免 window 未定义错误。
  • 复杂图表建议拆分 option 配置到独立文件。
  • 多次渲染时复用 echartsInstance 避免性能问题。

标签: reactecharts
分享给朋友:

相关文章

react moment如何使用

react moment如何使用

安装 react-moment 通过 npm 或 yarn 安装 react-moment: npm install react-moment 或 yarn add react-moment 基本…

react如何卸载

react如何卸载

卸载 React 项目或依赖 如果需要完全卸载 React 项目或相关依赖,可以按照以下步骤操作: 删除项目文件夹 直接删除整个项目文件夹是最彻底的方式。确保已备份重要代码或配置文件。 卸载全局安…

react如何diff

react如何diff

React Diff 算法原理 React 的 Diff 算法是 Virtual DOM 的核心部分,用于高效更新真实 DOM。其核心思想是通过对比新旧 Virtual DOM 树的差异,最小化 DO…

如何启动react

如何启动react

安装Node.js 确保系统已安装Node.js(建议使用LTS版本),可通过官网下载并安装。安装完成后,在终端运行以下命令验证版本: node -v npm -v 创建React项目 使用官方工具…

react如何同步

react如何同步

React 同步状态管理方法 在 React 中实现同步状态管理,可以通过以下多种方式实现: 使用 useState 和 useEffect 钩子 通过 useState 定义状态,使用 useEf…

react如何重启

react如何重启

重启 React 应用的方法 重新加载当前页面 使用 window.location.reload() 强制刷新页面,这会重新加载整个应用并重置所有状态。 window.location.rel…