Diyelim ki 3 girişim var: rate, sendAmount ve receAmount. Bu 3 girişi useEffect difing params üzerine koydum. Kurallar:
- SendAmount değiştiyse, hesaplıyorum
receiveAmount = sendAmount * rate - ReceAmount değiştiyse, hesaplıyorum
sendAmount = receiveAmount / rate - Oran değiştiğinde
receiveAmount = sendAmount * ratene zaman hesaplıyorumsendAmount > 0ya dasendAmount = receiveAmount / ratene zaman hesaplıyorumreceiveAmount > 0
Sorunu göstermek için kod ve https://codesandbox.io/s/pkl6vn7x6j kodları .
Bu durumda 3 işleyici yapmak yerine oldValuesve newValuesbenzerlerini karşılaştırmanın bir yolu var mı componentDidUpdate?
Teşekkürler
İşte https://codesandbox.io/s/30n01w2r06 ile son çözümümusePrevious
Bu durumda, useEffecther değişiklik aynı ağ çağrısına yol açtığı için çoklu kullanamıyorum . Bu yüzden changeCountdeğişikliği izlemek için de kullanıyorum . Bu changeCountaynı zamanda yalnızca yerel değişikliklerin izlenmesine yardımcı olur, böylece sunucudaki değişiklikler nedeniyle gereksiz ağ çağrısını önleyebilirim.