Qual é a função $ watch do angular equivalente no React.js?
Quero ouvir alterações de estado e chamar uma função como getSearchResults ().
componentDidMount: function() {
this.getSearchResults();
}
javascript
reactjs
Eniz Gülek
fonte
fonte
Os seguintes métodos de ciclo de vida serão chamados quando o estado for alterado. Você pode usar os argumentos fornecidos e o estado atual para determinar se algo significativo foi alterado.
fonte
componentDidUpdate
correta do componente com o prop era a prescrição correta. Obrigado por isso.componentWillUpdate
está sendo preterido: reactjs.org/blog/2018/03/27/update-on-async-rendering.html #componentDidUpdate
também não disparar quando receber novos adereços, não necessariamente apenas quando o estado?componentWillUpdate
está obsoleto.Eu acho que você deveria usar abaixo o Component Lifecycle como se você tivesse uma propriedade de entrada que, na atualização, precisa acionar a atualização do componente, então este é o melhor lugar para fazer isso, pois será chamado antes de renderizar, você pode até atualizar o estado do componente para ser refletido na vista.
fonte
Desde o React 16.8 em 2019, com useState e useEffect Hooks, os itens a seguir são equivalentes (em casos simples):
AngularJS:
Reagir:
fonte
Usar useState com useEffect, conforme descrito acima, é uma maneira absolutamente correta. Mas se a função getSearchResults retornar assinatura, useEffect deverá retornar uma função que será responsável por cancelar a assinatura. A função retornada de useEffect será executada antes de cada alteração na dependência (nome no caso acima) e na destruição do componente
fonte
Já faz um tempo, mas para referência futura: o método shouldComponentUpdate () pode ser usado.
ref: https://reactjs.org/docs/react-component.html
fonte
shouldComponentUpdate
para que ele não seja adequado para este caso de uso.