react Material-ui, Comment savoir si je peux utiliser onClick for button?

la liste des propriétés sur le doc n'inclut pas onClick (http://www.material-ui.com/#/components/icon-button)

Comment savoir si je dois utiliser onClick pour click handler?

18
demandé sur eugene 2016-10-21 05:11:59

3 réponses

Le Matériel de l'INTERFACE utilisateur de la documentation ne permet pas de liste de la norme Réagir (navigateur natif) événements:

https://facebook.github.io/react/docs/events.html#mouse-events

c'est parce qu'on s'attend à ce que vous soyez déjà au courant des événements natifs disponibles. Par exemple, vous pouvez également utiliser onWheel. Ce serait une liste longue et redondante si tous les événements natifs étaient inclus.

kouak explique, d'autres accessoires (tels que onClick) sont transmises à un composant enfant.

exemple aléatoire:

<Button color="primary" onClick={() => { console.log('onClick'); }}>
    Primary
</Button>
14
répondu thirtydot 2018-06-13 15:26:30

il suffit d'ajouter onClick les accessoires vous immergent <IconButton />.

les accessoires qui ne sont pas cités dans le doc sont transmis dans leur<EnhancedButton /> composant qui va gérer onClick tout simplement parfait.

Voir ici: https://github.com/callemall/material-ui/blob/master/src/IconButton/IconButton.js#L241

3
répondu kouak 2016-10-21 08:07:17

Vous pouvez ajouter un wrapper sur le <IconButton/> pour obtenir l' onClick événement.

Exemple

render() {
  return <div class="font-icon-wrapper" onClick={this.fontIconClick}>
    <IconButton iconClassName="muidocs-icon-custom-github" />
  </div>
}

Cela devrait fonctionner...

1
répondu Pranesh Ravi 2016-10-21 04:48:16