setAttributeNS不适用于方法调用 - reactjs

时间:2016-09-20 07:10:38

标签: javascript events dom reactjs

我有一个svg元素<svg id="svgMenuOpen" className="bottomMenu" width={302} height={302} onMouseDown={this.selectElement.bind(this)} >。方法 -

selectElement(e){
    let svg = document.getElementById('svgMenuOpen');
    svg.setAttributeNS(null, "onmousemove", "this.moveElement");
}

moveElement(e){
    console.log('something')
}

this.moveElement是方法,我现在正在向控制台写一些东西。但是这个方法没有被调用。我试过而不是this.moveElementthis.moveElement.bind(this)this.moveElement(),但它会抛出错误 this.moveElement is not a functionCannot read property 'bind' of undefined。使用this.moveElement时,控制台中没有错误...当我只是简单地写this.moveElement console.log('something')时,它就可以了。那么任何提示?

1 个答案:

答案 0 :(得分:0)

selectElement(e){
    let svg = document.getElementById('svgMenuOpen');
    const thiz = this;
    svg.onmousemove = function() {
      thiz.moveElement.bind(thiz);
    }
}