2021SC@SDUSC
由于echarts是依赖矢量图形库zrender进行实现的,所以要解读echarts源码,首先需要对于zrender有大致的了解。
zrender是canvas的一个类库,也就是说zrender是基于canvas实现的。
github网址:GitHub - ecomfe/zrender: A lightweight graphic library providing 2d draw for Apache ECharts
文件夹:
animation 动画有关;
contain 包含判断;
container Group.js 元素组的概念;
core 核心代码,包含一些工具(util.js)、事件(event.js)、唯一ID(guid.js)、矩阵运算有关(matrix.js)等;
dom HandleProxy.js dom事件有关;
graphic 图形有关,shape文件夹下就是各个图形的js文件;
mixin 混入模式要混入的函数;
tool 工具函数,包括颜色工具(color.js),path工具(path.js)和转换工具(transformPath.js);
全局的文件:
config.js 配置文件
Element.js 元素文件作为zrender最基本的元素
Handle.js C层,控制层
Layer.js 图层管理
Painter.js V层,视图层
Storage.js M层,数据管理层
zrender.js 入口