routing.ts 613 B

123456789101112131415161718
  1. import { createNavigation } from "next-intl/navigation";
  2. import { defineRouting } from "next-intl/routing";
  3. const modulesFiles = require.context("../../messages", true, /\.json$/);
  4. export const locales = modulesFiles.keys().map((modulePath: string) => {
  5. return modulePath.replace(/^\.\/(.*)\.\w+$/, "$1");
  6. });
  7. // 路由
  8. export const { Link, redirect, usePathname, useRouter } = createNavigation({
  9. locales,
  10. });
  11. export const defaultLocale = locales.at(0) as string;
  12. export const routing = defineRouting({
  13. locales: locales,
  14. defaultLocale: defaultLocale,
  15. localeCookie: { name: "language" },
  16. });