背景
View 是 G2 对画布区域的一个管理容器。通过 view 的嵌套,可以有效的进行 画布区域 的树形递归拆分,最终生成一个画布树结构。
主要满足几类需求:
- 分面
- rect
- list
- tree
- mirror
- …
- 自定义图形
- 组合饼图
- 业务自定义图形
- …
共享数据
为了方便使用,父子 view 之间会共享一些数据:
- canvas
- data
- theme
- options
- scales
- axes
- coordinate
也就是在父 view 设置了数据之后,所有子 view 都可以用这份数据,除非子 view 自己重新设置数据。
布局
父子 View 的嵌套布局,主要依赖两个机制:
- region
- padding
详见:https://www.yuque.com/antv/g2-docs/btgggq#1WJYO
API
- view.createView
view.createView(cfg);
- new View
const v = new View(cfg);
view.views.push(v);
推荐使用第一种写法,可以保证父子 view 的数据共享。