Aktualnie w pliku [...slug].tsx dodałem prostego ifa, że jeśli slug === 'koszyk' to zwracam stronę cart.tsx tak jakbym zwracał normalny komponent ale jakoś to mi tak źle wygląda
Wcześniej próbowałem w next.config.js dodać redirects/rewrites ale wtedy miałem taki efekt że po wejściu na localhost/koszyk przez chwilę było widać localhost/cart i dopiero potem localhost/koszyk przy czym ta strona tak naprawdę lądowała się 3 razy (koszyk>cart>koszyk)
@dupaXDDDDD Najprostszy sposób to utworzenie pliku z koszykiem per język w pages: np. pages/koszyk.tsx, pages/cart.tsx i importowanie w tych plikach komponentu strony, który będzie wspólny dla wszystkich tych stron np. CartPage.tsx. Tam będziesz na bazie pathname decydował jaki jest język i wyświetlał odpowiednie rzeczy na stronie.
@dupaXDDDDD Druga opcja to middleware, ale nie wiem gdzie hostujesz to nawet o tym nie wspominamn bo mój sposób z wyżej jest najszybszy chyba w zbudowaniu zadziała nawet dla npm next export i deployu static files gdziekolwiek. Czyli nie wymaga ciągłego trzymania procesu node na serwerze (next start).
@dupaXDDDDD Osobiście zrobiłbym po prostu nazwy stron w języku angielskim i używał ich niezależnie od wybranego języka. Routing w kilku językach tylko komplikuje całą sprawę, a dla użytkownika wychodzi praktycznie na to samo - nie będzie przecież ręcznie modyfikował linków
Zaloguj się aby komentować