Files
next.js/examples/i18n-routing-pages/components/locale-switcher.tsx
4b66771895 Remove deprecated legacyBehavior and passHref prop from Link component (#83003)
The `legacyBehavior` prop of the `Link` component has been deprecated
since #77473. For Next.js 16, we're finally removing support for it.
Consequently, we're also removing support for the `passHref` prop, which
was only useful in conjunction with the `legacyBehavior` prop.

A [codemod is
available](https://nextjs.org/docs/app/guides/upgrading/codemods#new-link)
to help you automatically upgrade your codebase.

reverts #77473

---------

Co-authored-by: Sebastian Sebbie Silbermann <[email protected]>
2025-08-26 14:04:27 +02:00

30 lines
693 B
TypeScript

import Link from "next/link";
import { useRouter } from "next/router";
export default function LocaleSwitcher() {
const router = useRouter();
const { locales, locale: activeLocale } = router;
const otherLocales = (locales || []).filter(
(locale) => locale !== activeLocale,
);
return (
<div>
<p>Locale switcher:</p>
<ul>
{otherLocales.map((locale) => {
const { pathname, query, asPath } = router;
return (
<li key={locale}>
<Link href={{ pathname, query }} as={asPath} locale={locale}>
{locale}
</Link>
</li>
);
})}
</ul>
</div>
);
}