# 源码入口
# 1.引用
import zrender from "zrender"
1
- 内部代码入口会再次处理引用资源
var _zrender = require("./lib/zrender");
(function () {
for (var key in _zrender) {
if (_zrender == null || !_zrender.hasOwnProperty(key) || key === 'default' || key === '__esModule') return;
exports[key] = _zrender[key];
}
})();
var _export = require("./lib/export");
(function () {
for (var key in _export) {
if (_export == null || !_export.hasOwnProperty(key) || key === 'default' || key === '__esModule') return;
exports[key] = _export[key];
}
})();
require("./lib/svg/svg");
require("./lib/vml/vml");
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
重点为:
- 引用 zrender 文件
- 引用 export 文件
# 2.zrender.js
export function init ...
export function dispose ...
export function getInstance ...
export function registerPainter ...
var ZRender = function (id, dom, opts) ...
ZRender.prototype = ...
1
2
3
4
5
6
2
3
4
5
6
主要是导出几个函数,构建 ZRender 类
# 3.export.js
import * as zrUtil from './core/util';
import * as matrix from './core/matrix';
import * as vector from './core/vector';
import * as colorTool from './tool/color';
import * as pathTool from './tool/path';
import {parseSVG} from './tool/parseSVG';
export {default as Group} from './container/Group';
export {default as Path} from './graphic/Path';
export {default as Image} from './graphic/Image';
export {default as CompoundPath} from './graphic/CompoundPath';
export {default as Text} from './graphic/Text';
export {default as IncrementalDisplayable} from './graphic/IncrementalDisplayable';
export {default as Arc} from './graphic/shape/Arc';
export {default as BezierCurve} from './graphic/shape/BezierCurve';
export {default as Circle} from './graphic/shape/Circle';
export {default as Droplet} from './graphic/shape/Droplet';
export {default as Ellipse} from './graphic/shape/Ellipse';
export {default as Heart} from './graphic/shape/Heart';
export {default as Isogon} from './graphic/shape/Isogon';
export {default as Line} from './graphic/shape/Line';
export {default as Polygon} from './graphic/shape/Polygon';
export {default as Polyline} from './graphic/shape/Polyline';
export {default as Rect} from './graphic/shape/Rect';
export {default as Ring} from './graphic/shape/Ring';
export {default as Rose} from './graphic/shape/Rose';
export {default as Sector} from './graphic/shape/Sector';
export {default as Star} from './graphic/shape/Star';
export {default as Trochoid} from './graphic/shape/Trochoid';
export {default as LinearGradient} from './graphic/LinearGradient';
export {default as RadialGradient} from './graphic/RadialGradient';
export {default as Pattern} from './graphic/Pattern';
export {default as BoundingRect} from './core/BoundingRect';
export {matrix};
export {vector};
export {colorTool as color};
export {pathTool as path};
export {zrUtil as util};
export {parseSVG};
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
主要导出各种定义好的形状