首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >DatePicker -哪个更改了?

DatePicker -哪个更改了?
EN

Stack Overflow用户
提问于 2018-06-28 02:31:03
回答 1查看 687关注 0票数 1

我有一个表单,上面有来自ant-design的多个DatePicker组件。在大多数情况下,它是有效的。

问题是它们都绑定到相同的onChange事件处理程序(为了简单起见,因为它们都呈现在一个循环中)。我可以很好地获取日期(事件处理程序的参数2),但我似乎不能确定5个日期选择器中的哪一个触发了更改。

这是一个问题,因为我在需要将日期与之关联的行上还有其他数据。我添加了一个name属性,但它没有传递给处理程序grrrr,所以它对我没有任何好处。

那么,有谁知道如何获取触发onChange事件的(antd)日期选择器的名称,或者知道某个日期选择器会将其名称传递给onChange事件,甚至将其自身传递给日期选择器,这样我就可以知道哪个日期选择器发生了更改?

EN

回答 1

Stack Overflow用户

发布于 2018-06-28 03:23:23

问题解决了。闭包来拯救你。是啊。

代码语言:javascript
复制
onDateChangeHandler = (id) =>{
    var self = this;
    return function(mmmt, ds){
        self.setState({ [id]: ds })
    }
}

然后在设置日期选择器的循环中:

代码语言:javascript
复制
<DatePicker size='default' name={"date_" + i} onChange={this.onDateChangeHandler("date_" + i)} />

这给了我想要的结果。

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

https://stackoverflow.com/questions/51069345

复制
相关文章

相似问题

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