(
dom: HTMLElement,
// Theme name or themeOption.
theme?: string | ThemeOption,
opts?: EChartsInitOpts
)
| 517 | private [STATUS_NEEDS_UPDATE_KEY]: boolean; |
| 518 | |
| 519 | constructor( |
| 520 | dom: HTMLElement, |
| 521 | // Theme name or themeOption. |
| 522 | theme?: string | ThemeOption, |
| 523 | opts?: EChartsInitOpts |
| 524 | ) { |
| 525 | super(new ECEventProcessor()); |
| 526 | |
| 527 | opts = opts || {}; |
| 528 | |
| 529 | // mark the echarts instance as raw in Vue 3 to prevent the object being converted to be a proxy. |
| 530 | (this as any).__v_skip = true; |
| 531 | |
| 532 | this._dom = dom; |
| 533 | |
| 534 | let defaultRenderer = 'canvas'; |
| 535 | let defaultCoarsePointer: 'auto' | boolean = 'auto'; |
| 536 | let defaultUseDirtyRect = false; |
| 537 | |
| 538 | this[EC_UPDATE_CYCLE_VERSION_KEY] = 1; |
| 539 | |
| 540 | if (__DEV__) { |
| 541 | const root = ( |
| 542 | /* eslint-disable-next-line */ |
| 543 | env.hasGlobalWindow ? window : global |
| 544 | ) as any; |
| 545 | |
| 546 | if (root) { |
| 547 | defaultRenderer = retrieve2(root.__ECHARTS__DEFAULT__RENDERER__, defaultRenderer); |
| 548 | defaultCoarsePointer = retrieve2(root.__ECHARTS__DEFAULT__COARSE_POINTER, defaultCoarsePointer); |
| 549 | defaultUseDirtyRect = retrieve2(root.__ECHARTS__DEFAULT__USE_DIRTY_RECT__, defaultUseDirtyRect); |
| 550 | } |
| 551 | |
| 552 | } |
| 553 | |
| 554 | if (opts.ssr) { |
| 555 | zrender.registerSSRDataGetter(el => { |
| 556 | const ecData = getECData(el); |
| 557 | const dataIndex = ecData.dataIndex; |
| 558 | if (dataIndex == null) { |
| 559 | return; |
| 560 | } |
| 561 | const hashMap = createHashMap(); |
| 562 | hashMap.set('series_index', ecData.seriesIndex); |
| 563 | hashMap.set('data_index', dataIndex); |
| 564 | ecData.ssrType && hashMap.set('ssr_type', ecData.ssrType); |
| 565 | return hashMap; |
| 566 | }); |
| 567 | } |
| 568 | |
| 569 | const zr = this._zr = zrender.init(dom, { |
| 570 | renderer: opts.renderer || defaultRenderer, |
| 571 | devicePixelRatio: opts.devicePixelRatio, |
| 572 | width: opts.width, |
| 573 | height: opts.height, |
| 574 | ssr: opts.ssr, |
| 575 | useDirtyRect: retrieve2(opts.useDirtyRect, defaultUseDirtyRect), |
| 576 | useCoarsePointer: retrieve2(opts.useCoarsePointer, defaultCoarsePointer), |
nothing calls this directly
no test coverage detected