Не могу присоединить преобразователь к элементу из другого класса, используя konva - PullRequest
0 голосов
/ 20 марта 2020

Я пытаюсь присоединить преобразователь к элементу, используя findOne и Id, при печати он распознает оба узла, но не присоединяет его, ошибка не отображается. Ниже приведена соответствующая функция, запускаемая onClick, узлы определены в классе-брате, и никакие прослушиватели событий не должны запускаться в классе, к которому она прикреплена.

Кстати, все реквизиты определены в родительском компоненте

ниже приведен соответствующий условный оператор, элемент находится внутри группы, которая находится внутри слоя в родительском компоненте:

if(this.props.selectedElementsID===this.props.id)
{
    console.log(this.props.layer)
   console.log(this.props.layer.findOne(`#${this.props.id}`).findOne(`#transform${this.props.id}`))
    console.log(this.props.layer.findOne(`#${this.props.id}`).findOne(`#${this.props.id}`))
    this.props.layer.findOne(`#${this.props.id}`).findOne(`#transform${this.props.id}`).attachTo(this.props.layer.findOne(`#${this.props.id}`).findOne(`#${this.props.id}`))}
}

1 Ответ

0 голосов
/ 20 марта 2020

Может потребоваться перерисовать слой при подключении трансформатора:

const node = this.props.layer.findOne(`#${this.props.id}`);
const transformer = this.props.layer.findOne(`#transform${this.props.id}`);
transformer.attachTo(node);
this.props.layer.batchDraw();
...