recherche

Maison  >  Questions et réponses  >  le corps du texte

javascript - Comment modifier le nom d'une classe dans React sans utiliser l'état?

Comme le titre, comment puis-je changer la classe directement en utilisant js natif au lieu d'utiliser la méthode suivante dans React ?

<p className={ this.state.*** ? class1 : class2 }></p>
滿天的星座滿天的星座2741 Il y a quelques jours1083

répondre à tous(3)je répondrai

  • 滿天的星座

    滿天的星座2017-07-05 11:08:31

    <p ref={(p)=>{this.getDom = p}}></p>
    ...
    // 可以在一个事件中通过this.getDom获取当前元素,再通过className设置
    this.getDom.className = class1

    répondre
    0
  • 三叔

    三叔2017-07-05 11:08:31

    La manipulation du DOM avec JS natif n'est pas recommandée. Si vous avez vraiment besoin de cette fonctionnalité, vous pouvez obtenir la référence au nœud DOM via la méthode findDOMNode de ReactDOM. Par exemple ici :
    https://facebook.github.io/re...

    Mais il s'agit en effet d'un comportement potentiellement risqué [ouvrir une porte sécurisée]. L'opération consistant à modifier directement le DOM via JS natif est redondante, dangereuse et incompatible avec les idées de React. JSX.

    répondre
    0
  • 伊谢尔伦

    伊谢尔伦2017-07-05 11:08:31

    Il doit y avoir d'autres façons de le faire. Vous pouvez considérer le package classnames. La référence utilisée à l'étage est également une méthode courante

    .

    répondre
    0
  • Annulerrépondre