组件如何在React中将自己作为参数传递?

时间:2016-03-18 19:58:17

标签: javascript reactjs

我甚至不确定这是否可行,但让我说我有这个:

<p id='1' disabled={this.anyfunction(???)}>Hello wurld</p>

这将是我的功能

anyfuction:function(component){
    console.log(component.id)
}

我应该将哪个参数传递给函数? this无法正常工作,我已尝试bind(this),但问题是该功能未被调用(无法myfunction().bind(this)执行myfunction.bind(this)之类的操作工作,HTML渲染时没有被调用。)

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

您可以从渲染中传递参数,如

  

this.anyFunc.bind(this, 'my parameter')

答案 1 :(得分:0)

您可以使用bind

,而不是使用call
this.anyfunction.call(this, some, other, parameters);

但是,除非我错过了什么,否则我想你想要的东西是:

class Component extends React.Component {
  render() {
    let isDisabled = this.anyFunction();

    return (
      <p id='1' disabled={ isDisabled }>Hello wurld</p>
    );
  }

  anyFunction() {
    // you can reference the component w/ this
    return this.props.somethingPassedIn;
  }
};