首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >React Semantic-ui如何使用附加参数处理dropdown onclick

React Semantic-ui如何使用附加参数处理dropdown onclick
EN

Stack Overflow用户
提问于 2019-05-29 16:33:04
回答 1查看 2.6K关注 0票数 0

我正在使用react semantic ui dropdown,并希望在我的dropdown上处理onclick事件。考虑到我有这个方法要处理

代码语言:javascript
复制
handleClick = (e, {value }) => this.setState({id: value })

然后我就可以用这个打电话了

代码语言:javascript
复制
 <Dropdown
     selection
     options={myOptions}
     placeholder='I change value on keyboard navigation'
     onClick={this.handleClick} />

但在某些情况下,我想使用额外的参数调用handleClick,我尝试过这样做

代码语言:javascript
复制
<Dropdown
     selection
     options={myOptions}
     placeholder='I change value on keyboard navigation'
     onClick={this.handleClick.bind(this,idx)} />

并将我的处理程序更改为handleClick = (e, {value },idx) => this.setState({id: value }),但它似乎不起作用。我做错了什么或有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2019-07-29 14:42:05

我认为这部分不是这样执行的

代码语言:javascript
复制
onClick={this.handleClick.bind(this,idx)}

它应该改成这样

代码语言:javascript
复制
onClick={(idx) => this.handleClick.bind(this,idx)}

在React中,当我们必须在单击时传递带函数的参数时,我们必须像上面那样添加箭头符号。如果这个帮助对你不起作用,那么我认为你必须改变你的绑定,然后下面的代码将会帮助你

onClick={this.handleClick.bind(this,idx)}更改为以下内容

onClick={(e, e.target.value, idx) => this.handleClick(e, e.target.value, idx)}

同时也改变了

handleClick = (e, {value },idx) => this.setState({id: value })

到这个

handleClick = (e, value, idx) => this.setState({id: value })

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56356269

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档