【发布时间】:2018-02-04 16:23:00
【问题描述】:
在 FabricJS 中,我可以捕获 object:modified 事件。我想用它来更新画布的底层对象模型。 IE,我们对图表有自己的定义。
我看不出事件对象是如何关联对画布所做的实际更改的。有没有人看过任何文档或样本?
谢谢
【问题讨论】:
标签: fabricjs
在 FabricJS 中,我可以捕获 object:modified 事件。我想用它来更新画布的底层对象模型。 IE,我们对图表有自己的定义。
我看不出事件对象是如何关联对画布所做的实际更改的。有没有人看过任何文档或样本?
谢谢
【问题讨论】:
标签: fabricjs
与上一个对象状态相比,事件没有差异。 你可以自己实现。
object:modified 使用一个将对象作为唯一参数的回调。
我们称之为选项。 options.target 是触发事件的对象。
每个 fabric.Object 都有一个混合状态检查的方法,必须手动触发。
所以你可以做到rect.saveState('propsINeedToCheck') 和rect.hasStateChanged('propsINeedToCheck')
其中propsINeedToCheck是原型中的一个数组:
fabric.Object.prototype.propsINeedToCheck = ['top', 'left', 'angle'] 你必须创建。
现在没有什么可以告诉您实际发生了什么变化,只是有些事情发生了变化。此方法的有效性取决于您要检查的内容数量。
另一种方法是每次转储对象状态并与进行深度比较的函数进行比较。
【讨论】: