FabricJS:有没有办法让对象在剪辑蒙版之外无法选择?

FabricJS: is there a way to make object unselectable outside of clip mask?

我正在 fabric canvas 上创建网格,用户可以在网格的每个单元格中上传图像。每个单元格都有一个剪贴蒙版,一切都很好。但我的问题是,如果用户在一个单元格中移动图像,您可以看到剪贴蒙版之外的选择。有没有办法将选区保留在剪贴蒙版内? here is a screen shot

尝试在您的 canvas 选项中添加下一个选项 controlsAboveOverlay: true

const canvas = new fabric.Canvas("c", {
  controlsAboveOverlay: true
});

http://fabricjs.com/docs/fabric.Canvas.html#controlsAboveOverlay

编辑: 添加了带有 perPixelTargetFind 选项

的示例

https://codesandbox.io/s/kind-shtern-hq20u?file=/src/index.js