在 react-konva 中转换后矩形不能正确重新渲染

Rectangle does not re-render properly after transformation in react-konva

我一直在我的项目中使用此 (https://github.com/oasis10702/konva-simple-example) 代码,一切正常。但是,将 react 和 react-konva 更新到最新版本会对我造成一些意外行为。使用变换器调整矩形大小时,它会缩放边框描边,请参见图像。 scaleX 和 scaleY 似乎都没有重置,这使得它在我每次移动矩形时都执行缩放。

我是 React 和 Konva 的新手,想知道在新版本中是否有一些逻辑发生了变化,我应该考虑缓解这种情况。

尝试在下面的沙盒中调整矩形的大小。 https://codesandbox.io/embed/vyv106x295 如果我将依赖项更新到最新,行为就会改变。

我试过用 https://github.com/konvajs/konva/issues/401 解决它,但在这个版本中似乎没有帮助。

主要变化是 strict 模式。您可以只为所有形状启用它,或者只为一个矩形启用它:

<Rect {...someProps} scaleX={1} scaleY={1}  _useStrictMode />

有关详细信息,请参阅:https://github.com/konvajs/react-konva#strict-mode