Konva 性能优化指南
batchDraw
方法- 图层管理
- 形状缓存
- 动画优化
- 形状重绘
- 如果你的形状只有位置变换(
x
和y
, 没有scale
,rotation
),设置transformsEnabled = 'position'
。 - 如果你不需要在图层上添加事件, 设置
layer.hitGraphEnabled(false)
, 或者使用Konva.FastLayer。 参见 演示。 - 对于移动应用程序将视口设置为:
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
。 - 如果您发现在视网膜屏幕的设备上的性能不佳, 设置
Konva.pixelRatio = 1
.确保结果的质量能满足您的需求。 - 当拖动节点时,您可以在单独的一个图层上移动它, 拖动完成后将其移回到原来的图层。
- 优化描边的绘制。
- 如果形状同时设置了填充,描边和透明度,您可以设置
shape.perfectDrawEnabled(false)
。详细信息参见 禁用 Perfect Drawing。 - 尽可能设置
shape.listening(false)
。 更多信息参见 Listening false。 - 防止内存泄漏。