echarts.ts 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. import type {
  2. // 系列类型的定义后缀都为 SeriesOption
  3. BarSeriesOption,
  4. LineSeriesOption,
  5. } from 'echarts/charts';
  6. import type {
  7. DatasetComponentOption,
  8. GridComponentOption,
  9. // 组件类型的定义后缀都为 ComponentOption
  10. TitleComponentOption,
  11. TooltipComponentOption,
  12. } from 'echarts/components';
  13. import type { ComposeOption } from 'echarts/core';
  14. import { BarChart, LineChart, PieChart, RadarChart } from 'echarts/charts';
  15. import {
  16. // 数据集组件
  17. DatasetComponent,
  18. GridComponent,
  19. LegendComponent,
  20. TitleComponent,
  21. ToolboxComponent,
  22. TooltipComponent,
  23. // 内置数据转换器组件 (filter, sort)
  24. TransformComponent,
  25. } from 'echarts/components';
  26. import * as echarts from 'echarts/core';
  27. import { LabelLayout, UniversalTransition } from 'echarts/features';
  28. import { CanvasRenderer } from 'echarts/renderers';
  29. // 通过 ComposeOption 来组合出一个只有必须组件和图表的 Option 类型
  30. export type ECOption = ComposeOption<
  31. | BarSeriesOption
  32. | DatasetComponentOption
  33. | GridComponentOption
  34. | LineSeriesOption
  35. | TitleComponentOption
  36. | TooltipComponentOption
  37. >;
  38. // 注册必须的组件
  39. echarts.use([
  40. TitleComponent,
  41. PieChart,
  42. RadarChart,
  43. TooltipComponent,
  44. GridComponent,
  45. DatasetComponent,
  46. TransformComponent,
  47. BarChart,
  48. LineChart,
  49. LabelLayout,
  50. UniversalTransition,
  51. CanvasRenderer,
  52. LegendComponent,
  53. ToolboxComponent,
  54. ]);
  55. export default echarts;