Wpis z mikrobloga

Próbuję sobie skonsumować api w #react i zastanawiam się jak to ugryźć.

Pobieram sobie zmienną do requesta, pakuję ją do usługi, która zwraca taki sam obiekt, jak w request, tylko że ze zaktualizowanymi wartościami, a więc chcę sobie te wartości w requeście zaktualizować. Ofc nie zrobię tego na zmiennej request bo jest ona stałą. Próbowałem używać useState, ale z jakiegoś powodu zwraca mi null i w sumie to nie wiem, czy używam go poprawnie.

const request = someRequestBuilder(abc, abc);
const [requestConfig, setRequestConfig] = useState(request)
someService({
name:requestConfig.name,
state: requestConfig.state}).then(response=>{
setRequestConfig(response)
})

#naukaprogramowania #javascript #typescript
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mandanda: tak to zrobiłeś, że będziesz miał nieskończoną pętlę jeżeli response będzie różny. Normalne podejście to odpalasz ściąganie w useefect jak ma być na init danego komponentu albo w callbacku po akcji usera, nie odpalasz takich funkcji bezpośrednio w komponencie bo się będą odpalać przy każdym renderze.
  • Odpowiedz
@mandanda: A najlepiej daj przykłąd na jakiegoś sandboxa co chcesz osiągnąć, zrób mocka serwisu i zobaczymy z czym masz problem.
  • Odpowiedz