React: [Docs] [Question] Réfs - Rappel vs chaîne

Créé le 11 mars 2016  ·  3Commentaires  ·  Source: facebook/react

Je lisais à nouveau la documentation, la différence entre définir une référence comme un rappel et une chaîne n'est pas claire pour moi :

<input ref={input => this._input = input} /> vs <input ref="input" />

Quelqu'un peut-il m'éclairer s'il vous plait ?

Commentaire le plus utile

Si vous définissez ref comme une chaîne, elle sera disponible sur l'objet this.refs , par exemple, this.refs.input .
Si vous définissez une référence de rappel, vous êtes libre d'en faire n'importe quoi, y compris de l'enregistrer sur this si vous le souhaitez.

Les références de chaîne finiront par être dépréciées. Les références de rappel ont été introduites plus tard, mais elles couvrent tous les cas d'utilisation des références de chaîne et n'ont pas certains de leurs inconvénients. Je vous suggère de toujours utiliser les références de rappel dans le nouveau code que vous écrivez.

À l'avenir, veuillez envisager de poser des questions sur StackOverflow. Nous ne considérons pas officiellement le suivi des problèmes comme un forum d'assistance, et malheureusement, la recherche GitHub ne fonctionne pas aussi bien que la recherche StackOverflow, il est donc probable que quelqu'un redemande. Alors que si vous postiez ceci sur StackOverflow, il est probable que vous obteniez une bonne réponse, votre question serait votée et plus de personnes en auraient appris et l'auraient trouvée à l'avenir.

Tous les 3 commentaires

Si vous définissez ref comme une chaîne, elle sera disponible sur l'objet this.refs , par exemple, this.refs.input .
Si vous définissez une référence de rappel, vous êtes libre d'en faire n'importe quoi, y compris de l'enregistrer sur this si vous le souhaitez.

Les références de chaîne finiront par être dépréciées. Les références de rappel ont été introduites plus tard, mais elles couvrent tous les cas d'utilisation des références de chaîne et n'ont pas certains de leurs inconvénients. Je vous suggère de toujours utiliser les références de rappel dans le nouveau code que vous écrivez.

À l'avenir, veuillez envisager de poser des questions sur StackOverflow. Nous ne considérons pas officiellement le suivi des problèmes comme un forum d'assistance, et malheureusement, la recherche GitHub ne fonctionne pas aussi bien que la recherche StackOverflow, il est donc probable que quelqu'un redemande. Alors que si vous postiez ceci sur StackOverflow, il est probable que vous obteniez une bonne réponse, votre question serait votée et plus de personnes en auraient appris et l'auraient trouvée à l'avenir.

Merci encore @gaearon. J'utiliserai StackOverflow la prochaine fois.

Aucun problème! N'hésitez pas à soumettre une pull request à la documentation si vous pensez que nous pourrions rendre plus évident que nous recommandons le modèle de référence de rappel dans le nouveau code.

Cette page vous a été utile?
0 / 5 - 0 notes