因为fabric是用在移动端上的,所以免不了有大量的touch交互,比如手势缩放旋转等功能,但发现5.2.1版本的fabric貌似无法监听touch:gesture,看源码也不支持gesture事件;
上github看了看issue,发现是新版本不支持,如下:
[Bug]: Touch events are not being captured on the mobile device. #8849
一度想要放弃,使用其他库来单独开发手势这一块;
但想了想,能在移动端支持移动、放大缩小图层,那么就不太可能禁用掉touch,随后上官网查了查,原来是下载库的时候,如果使用custom build 版本,默认是不带Gestures功能的;
勾上重新下载,就解决了;
如果你也无法使用gesture相关事件,需要打开fabric.js,然后全局搜索“gesture”关键词,看看有多少,如果超过一百多个,那么就说明源码是支持的;
如果少于,那么就是没有导入Gestures功能,上官网点击custom build 导出时勾选上即可;
附上地址:fabricjs.com/build/