Прямоугольник не перерисовывается должным образом после трансформации в реактив-конве

Я использовал этот ( https://github.com/oasis10702/konva-simple-example) код в моем проекте, и все работает отлично. Тем не менее, обновление реакции и реакции-до последней версии вызывает у меня непреднамеренное поведение. При изменении размера прямоугольника с помощью преобразователя он масштабирует обводку границы, см. Изображение. ScaleX и ScaleY также не сбрасываются, что заставляет выполнять масштабирование каждый раз, когда я перемещаю прямоугольник.

Прямоугольник

Я новичок как в React, так и в Konva, и мне интересно, есть ли какая-то логика, которая изменилась во время новых версий, которые я должен рассмотреть, чтобы смягчить это.

Попробуйте изменить размер прямоугольника в песочнице ниже. https://codesandbox.io/embed/vyv106x295 Если я обновлю зависимости до последней версии, поведение будет изменено.

Я пытался решить эту проблему с помощью https://github.com/konvajs/konva/issues/401 но в этой версии это не помогло.

1 ответ

Решение

Основное изменение было strict Режим. Вы можете просто включить его обратно для всех фигур или только для одного прямоугольника:

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

Для получения дополнительной информации см.: https://github.com/konvajs/react-konva

Другие вопросы по тегам