Przeładowywanie listy obiektów w komponencie nadrzędnym

Wątek przeniesiony 2023-07-06 10:49 z JavaScript przez Riddle.

0

Witam wszystkich. Mam komponent Home w którym wyświetla się lista obiektów ze zdjęciem, a każdy z obiektów ma przycisk do zmiany jego zdjęcia.
Po wciśnięciu na przycisk otwiera się okno dialogowe ze stworzonego przeze mnie komponentu ChangeImageDialog, po pomyślnej zmianie zdjęcia i zamknięciu okna dialogowego powinno nastąpić przeładowanie listy obiektów w komponencie Home. Lecz jak wywołać takie działanie z poziomu komponentu do zmiany zdjęcia?

Jestem nowy w temacie React.js, zatem przepraszam jeśli pytanie jest dość mocno banalne, lecz dopiero się uczę

0

A możesz to rozrysować na jakimś diagramie? będzie latwiej zrozumiec.

0

@LukeJL

screenshot-20230618151852.png

Dodatkowo screenshot, jak to wygląda w praktyce. Po kliknięciu zatwierdź zmiany i pomyślnym przesłaniu zdjęcia, zamyka się okno dialogowe, a zawartość pod spodem okna powinna się odświeżyć.
screenshot-20230618152122.png

1

Zakładam, że w Home masz jakiś stan i funkcję modyfikującą stan.

Coś na kształt:

const [items, setItems] = useState(data);

By zmodyfikować items, musisz do miejsca które ma je modyfikować przekazać setItems. Możesz to zrobić wprost za pomocą propsów, możesz użyć np. contextu.

0

Faktycznie! działa. Nie sądziłem, że jest to takie proste

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.