【Antd】希望多个Select组件共用一个回调函数应该如何抽象?

<Select defaultValue="a" onSelect={this.handleChange}>
    <Option value="a">a</Option>
    <Option value="b">b</Option>
    <Option value="c">c</Option>
</Select>

<Select defaultValue="d" onSelect={this.handleChange}>
    <Option value="d">d</Option>
    <Option value="e">e</Option>
    <Option value="f">f</Option>
</Select>

clipboard.png

option里面是Vnode:

clipboard.png

希望将同一个handleChange函数应用在多个Select组件上,应该如何明确所得的Value是从哪个组件传过来的呢?

阅读 2.4k
2 个回答

onSelect本来就有value、option 2个传参,可以自己传进方法,在加个参数来区分

<Select defaultValue="a" onSelect={(value, option) => this.handleChange(value, option, 'select1')}>
    <Option value="a">a</Option>
    <Option value="b">b</Option>
    <Option value="c">c</Option>
</Select>

<Select defaultValue="d" onSelect={(value, option) => this.handleChange(value, option, 'select2')}>
    <Option value="d">d</Option>
    <Option value="e">e</Option>
    <Option value="f">f</Option>
</Select>
新手上路,请多包涵

增加个参数来区分

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题