我需要制作一个具有约30k对象的应用程序,用户可以平移,缩放或“单击时选择”任何这些对象。正在使用Fabric.js画布
我已经使用SVG和svg-pan-zoom插件(没有Canvas元素)进行了相同的操作,效果更好
问题:缩放,平移或单击对象时出现严重滞后
尝试了特定于面料的选项
fabric.Object.prototype.objectCaching = false;
fabric.Object.prototype.statefullCache = false;
fabric.Object.prototype.noScaleCache = true;
fabric.Object.prototype.needsItsOwnCache = false;
Run Code Online (Sandbox Code Playgroud)
更新 这里更新的小提琴
以供参考 :
canvas-vs-svg-vs-div Stackoverflow