Quel est l' équivalent de la fonction $ watch angulaire dans React.js?
Je veux écouter les changements d'état et appeler une fonction comme getSearchResults ().
componentDidMount: function() {
this.getSearchResults();
}
javascript
reactjs
Eniz Gülek
la source
la source
Les méthodes de cycle de vie suivantes seront appelées lorsque l'état change. Vous pouvez utiliser les arguments fournis et l'état actuel pour déterminer si quelque chose de significatif a changé.
la source
componentDidUpdate
du composant avec l'accessoire était la bonne prescription. Merci pour cela.componentWillUpdate
est obsolète: reactjs.org/blog/2018/03/27/update-on-async-rendering.htmlcomponentDidUpdate
pas tirer aussi lors de la réception de nouveaux accessoires, pas nécessairement juste au moment où les changements d'état?componentWillUpdate
est obsolète.Je pense que vous devriez utiliser ci-dessous le cycle de vie des composants comme si vous aviez une propriété d'entrée qui, lors de la mise à jour, doit déclencher la mise à jour de votre composant, alors c'est le meilleur endroit pour le faire car il sera appelé avant le rendu, vous pouvez même mettre à jour l'état du composant pour être réfléchi sur la vue.
la source
Depuis React 16.8 en 2019 avec useState et useEffect Hooks, les suivants sont désormais équivalents (dans des cas simples):
AngularJS:
Réagir:
la source
Utiliser useState avec useEffect comme décrit ci-dessus est une manière absolument correcte. Mais si la fonction getSearchResults renvoie un abonnement, useEffect doit renvoyer une fonction qui sera responsable de la désinscription de l'abonnement. La fonction retournée par useEffect s'exécutera avant chaque changement de dépendance (nom dans le cas ci-dessus) et lors de la destruction du composant
la source
Cela fait un moment mais pour référence future: la méthode shouldComponentUpdate () peut être utilisée.
réf: https://reactjs.org/docs/react-component.html
la source
shouldComponentUpdate
donc il pourrait ne pas convenir à ce cas d'utilisation.