我试图在React Konva中的Transformer Component中进行一些更改,并且每当我尝试更改锚点大小时都会遇到此错误。我遵循了文档-https://konvajs.github.io/api/Konva.Transformer.html#validateAnchors__anchor
中所述的语法问题出在anchorSize中。请帮我。这是代码-
class TransformerComponent extends React.Component {
componentDidMount () {
this.checkNode ();
}
componentDidUpdate () {
this.checkNode ();
}
checkNode() {
const stage = this.transformer.getStage();
const { selectedShapeName } = this.props;
const selectedNode = stage.findOne ('.' + selectedShapeName);
this.transformer.rotateEnabled (false);
this.transformer.anchorSize (5);
if (selectedNode === this.transformer.node()) {
return;
}
if (selectedNode) {
this.transformer.attachTo (selectedNode);
}
else {
this.transformer.detach();
}
this.transformer.getLayer().batchDraw();
}
render() {
return (
<Transformer
ref = {node => {
this.transformer = node;
}}
/>
);
}
}
答案 0 :(得分:0)
您需要为checkNode()
bind this (以下简称),如下所示:
class TransformerComponent extends React.Component {
constructor(props) {
super(props)
this.checkNode = this.checkNode.bind(this)
}
...
答案 1 :(得分:0)
anchorSize
是最近引入的一个非常新的属性。尝试将Konva
更新到最新版本。