如何在单个组件内的事件处理程序中访问相邻的道具

时间:2019-10-25 16:58:05

标签: javascript reactjs

这应该很清楚,但是我找不到答案。

我只想将另一个道具上设置的值传递给同一组件道具中的onClick处理程序。

<Button
  ariaLabel="Click to Open"
  onClick={() => this.chooseAlertToggle([I WANT THE children PROP])}
  children="Info/Default"
  color="primary"
/>

因为children属性是用户定义的,所以我需要该值来控制切换。我不知道访问它的正确方法。我需要效果 onClick={() => this.chooseAlertToggle("Info/Default)},不是字面上的字符串,而是对children道具的引用

我尝试过对this.children这样的语法的猜测,我知道这是不正确的,只是在黑暗中拍摄。

2 个答案:

答案 0 :(得分:0)

我想你想要类似的东西

<Button
  ariaLabel="Click to Open"
  onClick={() => this.chooseAlertToggle(this.props.children)}
  children="Info/Default"
  color="primary"
/>

https://reactjs.org/docs/react-api.html#reactchildren

答案 1 :(得分:0)

您可以将传递给子属性的值绑定到choiceAlertToggle回调。

<Button
 ariaLabel="Click to Open"
 onClick={this.chooseAlertToggle.bind(this, "Info/Default")}
 children="Info/Default"
 color="primary"

/>