无法使用 konva 将转换器附加到来自另一个 class 的元素
Can't attach transformer to element from another class using konva
我正在尝试使用 findOne 和 Id 将转换器附加到元素,打印时它识别两个节点但不附加它,没有显示错误。下面是触发 onClick 的相关函数,节点在同级 class 中定义,并且不应在定义要附加的 class 上触发任何事件侦听器。
对了,所有的props都是在父组件上定义的
下面是相关的条件语句,该元素在父组件中的层内的组内:
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}`))}
}
附加转换器时可能需要重新绘制图层:
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();
我正在尝试使用 findOne 和 Id 将转换器附加到元素,打印时它识别两个节点但不附加它,没有显示错误。下面是触发 onClick 的相关函数,节点在同级 class 中定义,并且不应在定义要附加的 class 上触发任何事件侦听器。
对了,所有的props都是在父组件上定义的
下面是相关的条件语句,该元素在父组件中的层内的组内:
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}`))}
}
附加转换器时可能需要重新绘制图层:
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();