Ant-design: 里面的子元素<button/>应该是点击通过的

创建于 2017-07-31  ·  5评论  ·  资料来源: ant-design/ant-design

版本

2.12.3

环境

MAC, 铬 61,

转载链接

https://codepen.io/anon/pen/EvKmNO?editors=001

重现步骤

请查看控制台以检查 Codepen 示例中的行为,同时单击 \

help wanted

最有用的评论

@mim-Armand 明白你的意思。 IMO,如果您想提供组件级一致性,最好在回调中提供Button实例作为参数。 如果参数是Event (或更具体地说React.SyntheticEvent )实例,我想它的目标是真正的事件目标,它提供了 dom 级别的一致性。
作为旁注,您始终可以使用event.currentTarget来引用button event.currentTarget

所有5条评论

我认为这是一个错误......你能给我们一个公关来修复它吗?

当然,这周我会尝试做一个 PR :+1:

@benjycui我不太明白为什么事件目标应该始终设置为按钮元素。 事件的目标应该是事件发生的元素。

@jddxf确切地说,当您单击<Button/>您希望它作为目标传递,无论您单击<Button/>哪个部分。 (这是模块和组件的全部承诺,一组输入和一组一致的输出)
现在 Button 组件可能在引擎盖下有一个<span/>或其他元素(甚至无法使用,因为没有人知道它在那里,它几乎就在引擎盖下),这些元素可能是包装器,可能是不可见的或集成的在<Button/> 。 现在想象一下,每次点击同一个 Button 的行为都不同,只是因为有时您点击了Button不可见的span Button ,有时点击了Button本身,对于肯定是不一致或不想要的。
所以在你看来,imo 事件目标应该始终设置为按钮,当Button元素被点击时(子组件和元素应该是点击通过)

@mim-Armand 明白你的意思。 IMO,如果您想提供组件级一致性,最好在回调中提供Button实例作为参数。 如果参数是Event (或更具体地说React.SyntheticEvent )实例,我想它的目标是真正的事件目标,它提供了 dom 级别的一致性。
作为旁注,您始终可以使用event.currentTarget来引用button event.currentTarget

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

longhuasishen picture longhuasishen  ·  3评论

AhmedSayed77 picture AhmedSayed77  ·  3评论

taikongfeizhu picture taikongfeizhu  ·  3评论

ryannealmes picture ryannealmes  ·  3评论

shivekkhurana picture shivekkhurana  ·  3评论