Wpis z mikrobloga

#webdev #react #programowanie
Jaką stosujecie strukturę projektu (komponentów) w dużych Reactowych aplikacjach?
Chodzi mi TYLKO o organizację komponentów i stron (wiadomo, że są potrzebne jeszcze jakieś foldery na hooki, assets itp).
Ja osobiście często robię tak (jak na obrazku), że w folderze components przechowuję wszystkie komponenty reużywalne i globalne, a w folderze pages mam strony, które mają swój własny folder components na komponenty unikalne tylko dla tej strony.
To podejście da się zastosować tylko w apce stworzonej przez CRA, bo Gatsby lub Next.js nie pozwalają na folder components w pages.
Co sądzicie o tym podejściu? Jakie stosujecie struktury komponentów w swoim projektach? Jak to robicie w Next.js lub Gatsbym? Jak to wszystko rozłożyć, żeby nie pogubić się w dużych aplikacjach gdzie są setki komponentów?
Alodnog - #webdev #react #programowanie
Jaką stosujecie strukturę projektu (komponen...

źródło: comment_1623351090WppepIFd2V0a6JxuVn2Fja.jpg

Pobierz
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Alodnog: To podejście jest zgubne. Nie uzależniaj struktury całej aplikacji od routingu. Podziel appke na foldery z funkcjonalnościami: płatności, auth, formularz X. Jest to podejście które sprawdza się niezależnie od technologii. W przypadku FE W każdym takim folderze miej pliki z widokami - czyli komponentami Reactowymi i logiką które używają - czy to w postaci prostych serwisów, view-modelu czy serwisów odpalanych przez eventy np z Reduxa - bez znaczenia. Staraj
  • Odpowiedz
@Alodnog: nope, nie rob tak. Zrob folder components na komponenty, ktore sa uzywane przynajmniej 2 razy w kodzie, i folder typu views na widoki, ktore sa route'owalne (u Ciebie Home, Contact) i tam importuj te komponenty z components
  • Odpowiedz
@Alodnog: jezeli komponent jest stricte powiazany z daną podstroną i nigdzie indziej nie wystepuje (i nie ma szans wystapic bo jest stworzony pod konkretny use-case) to trzymaj w folderze z widokami
  • Odpowiedz
@Alodnog: bo te z components mozesz sobie wyekstraktowac potem latwo do jakiegos osobnego repo czy gdziekolwiek z ktorych moglyby korzystac inne projekty. View-specific komponentow nie ma sensu trzymac w takim folderze bo sie robi niepotrzebny balagan
  • Odpowiedz