Ant-design: Les éléments enfants à l'intérieur du <button/>doivent être cliquables

Créé le 31 juil. 2017  ·  5Commentaires  ·  Source: ant-design/ant-design

Version

2.12.3

Environnement

MAC, Chrome 61,

Lien de reproduction

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

Étapes à reproduire

S'il vous plaît se penche sur la console pour inspecter le comportement dans l'échantillon Codepen en cliquant sur les

help wanted

Commentaire le plus utile

@mim-Armand Vous avez compris. IMO, il peut être préférable de fournir une instance Button comme argument dans le rappel si vous souhaitez offrir une cohérence au niveau des composants. Si l'argument est une instance Event (ou plus précisément React.SyntheticEvent ), je suppose que sa cible est la véritable cible de l'événement, qui offre une cohérence au niveau dom.
En remarque, vous pouvez toujours faire référence au button avec event.currentTarget .

Tous les 5 commentaires

Je pense que c'est un bug... Pourriez-vous nous donner un PR pour le corriger ?

Bien sûr, je vais essayer de faire un PR cette semaine :+1:

@benjycui Je ne comprends pas très bien pourquoi la cible de l'événement doit toujours être définie sur l'élément button. La cible d'un événement doit être l'élément d'où provient l'événement.

@jddxf exactement, lorsque vous cliquez sur un <Button/> vous vous attendez à ce qu'il soit passé comme cible, quelle que soit la partie du <Button/> sur laquelle vous cliquez. (c'est toute la promesse de modules et de composants, un ensemble d'entrées et un ensemble de sorties cohérentes)
Maintenant, le composant Button peut avoir un <span/> ou un autre élément sous le capot (qui n'est même pas utilisable car personne ne sait qu'il est là, c'est littéralement juste sous le capot), ces éléments peuvent être des wrappers, peuvent être invisibles ou intégrés dans le <Button/> . imaginez maintenant que cliquer sur le même bouton se comporte différemment à chaque fois, uniquement parce que certaines fois vous avez cliqué sur le span invisible à l'intérieur du Button et parfois sur le Button lui-même, que pour n'est certainement pas cohérente ou souhaitée.
Donc, à votre avis, imo, la cible de l'événement doit toujours être définie sur le bouton, lorsque l'élément Button été cliqué (les sous-composants et les éléments doivent être cliqués)

@mim-Armand Vous avez compris. IMO, il peut être préférable de fournir une instance Button comme argument dans le rappel si vous souhaitez offrir une cohérence au niveau des composants. Si l'argument est une instance Event (ou plus précisément React.SyntheticEvent ), je suppose que sa cible est la véritable cible de l'événement, qui offre une cohérence au niveau dom.
En remarque, vous pouvez toujours faire référence au button avec event.currentTarget .

Cette page vous a été utile?
0 / 5 - 0 notes
bleepcoder.com utilise des informations sous licence publique GitHub pour fournir aux développeurs du monde entier des solutions à leurs problèmes. Nous ne sommes pas affiliés à GitHub, Inc. ni à aucun développeur qui utilise GitHub pour ses projets. Nous n'hébergeons aucune des vidéos ou images sur nos serveurs. Tous les droits appartiennent à leurs propriétaires respectifs.
Source pour cette page: Source

Langages de programmation populaires
Projets GitHub populaires
Plus de projets GitHub

© 2024 bleepcoder.com - Contact
Made with in the Dominican Republic.
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.