71 lines
1.5 KiB
TypeScript
71 lines
1.5 KiB
TypeScript
import type {
|
|
// 系列类型的定义后缀都为 SeriesOption
|
|
BarSeriesOption,
|
|
LineSeriesOption,
|
|
} from 'echarts/charts';
|
|
import type {
|
|
DatasetComponentOption,
|
|
GridComponentOption,
|
|
// 组件类型的定义后缀都为 ComponentOption
|
|
TitleComponentOption,
|
|
TooltipComponentOption,
|
|
} from 'echarts/components';
|
|
import type { ComposeOption } from 'echarts/core';
|
|
|
|
import {
|
|
BarChart,
|
|
GaugeChart,
|
|
LineChart,
|
|
MapChart,
|
|
PieChart,
|
|
RadarChart,
|
|
} from 'echarts/charts';
|
|
import {
|
|
// 数据集组件
|
|
DatasetComponent,
|
|
GridComponent,
|
|
LegendComponent,
|
|
TitleComponent,
|
|
ToolboxComponent,
|
|
TooltipComponent,
|
|
// 内置数据转换器组件 (filter, sort)
|
|
TransformComponent,
|
|
VisualMapComponent,
|
|
} from 'echarts/components';
|
|
import * as echarts from 'echarts/core';
|
|
import { LabelLayout, UniversalTransition } from 'echarts/features';
|
|
import { CanvasRenderer } from 'echarts/renderers';
|
|
|
|
// 通过 ComposeOption 来组合出一个只有必须组件和图表的 Option 类型
|
|
export type ECOption = ComposeOption<
|
|
| BarSeriesOption
|
|
| DatasetComponentOption
|
|
| GridComponentOption
|
|
| LineSeriesOption
|
|
| TitleComponentOption
|
|
| TooltipComponentOption
|
|
>;
|
|
|
|
// 注册必须的组件
|
|
echarts.use([
|
|
TitleComponent,
|
|
PieChart,
|
|
RadarChart,
|
|
TooltipComponent,
|
|
GridComponent,
|
|
DatasetComponent,
|
|
TransformComponent,
|
|
BarChart,
|
|
LineChart,
|
|
LabelLayout,
|
|
UniversalTransition,
|
|
CanvasRenderer,
|
|
LegendComponent,
|
|
ToolboxComponent,
|
|
GaugeChart,
|
|
VisualMapComponent,
|
|
MapChart,
|
|
]);
|
|
|
|
export default echarts;
|