¿Cómo comparar oldValues y newValues en React Hooks useEffect?

Digamos que tengo 3 entradas: rate, sendAmount y recibenAmount. Puse esas 3 entradas en useEffect params diferentes. Las reglas son:

Si sendAmount cambió, calculoreceiveAmount = sendAmount * rateSi reciboAmount cambiado, calculosendAmount = receiveAmount / rate Si la tasa ha cambiado, calculoreceiveAmount = sendAmount * rate cuandosendAmount > 0 o calculosendAmount = receiveAmount / rate cuandoreceiveAmount > 0

Aquí está el codesandboxhttps: //codesandbox.io/s/pkl6vn7x6 para demostrar el problema.

Hay una manera de comparar eloldValues ynewValues al igual que encomponentDidUpdate en lugar de hacer 3 controladores para este caso?

Gracia

Aquí está mi solución final conusePrevious https: //codesandbox.io/s/30n01w2r0

En este caso, no puedo usar múltiplesuseEffect porque cada cambio conduce a la misma llamada de red. Por eso también usochangeCount para seguir el cambio también. EstachangeCount también es útil para realizar un seguimiento de los cambios solo locales, por lo que puedo evitar llamadas de red innecesarias debido a los cambios del servidor.

Respuestas a la pregunta(2)

Su respuesta a la pregunta