Author:
    Creation:2026-01-21Last update:2026-09-27

    useLocale рд╣реБрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝

    useLocale рд╣реБрдХ рдЖрдкрдХреЛ рдЖрдкрдХреЗ Solid рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рд╡рд░реНрддрдорд╛рди locale рдХреЛ рдореИрдиреЗрдЬ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рд╡рд░реНрддрдорд╛рди locale (рдПрдХ accessor рдХреЗ рд░реВрдк рдореЗрдВ), default locale, рдЙрдкрд▓рдмреНрдз locales рдФрд░ locale рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝рдВрдХреНрд╢рди рддрдХ рдкрд╣реБрдБрдЪ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

    рдЙрдкрдпреЛрдЧ

    tsx
    import { useLocale } from "solid-intlayer";
    
    const LocaleSwitcher = () => {
      const { locale, setLocale, availableLocales } = useLocale();
    
      return (
        <select value={locale()} onChange={(e) => setLocale(e.currentTarget.value)}>
          {availableLocales.map((loc) => (
            <option value={loc} selected={loc === locale()}>
              {loc}
            </option>
          ))}
        </select>
      );
    };
    

    рд╡рд┐рд╡рд░рдг

    рдпрд╣ рд╣реБрдХ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЧреБрдгреЛрдВ рд╡рд╛рд▓рд╛ рдПрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рд▓реМрдЯрд╛рддрд╛ рд╣реИ:

    1. locale: рдПрдХ Solid accessor (() => string) рдЬреЛ рд╡рд░реНрддрдорд╛рди locale рд▓реМрдЯрд╛рддрд╛ рд╣реИред
    2. defaultLocale: рдЖрдкрдХреЗ intlayer.config.ts рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдбрд┐рдлрд╝реЙрд▓реНрдЯ localeред
    3. availableLocales: рдЙрди рд╕рднреА locales рдХреА рдПрдХ array рдЬреЛ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВред
    4. setLocale: рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ locale рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдлрд╝рдВрдХреНрд╢рдиред рдпрджрд┐ рд╕рдХреНрд╖рдо рд╣реИ рддреЛ рдпрд╣ persistence (cookies/local storage) рднреА рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИред

    рдкреИрд░рд╛рдореАрдЯрд░

    • props (рд╡реИрдХрд▓реНрдкрд┐рдХ):
      • onLocaleChange: рдПрдХ callback рдлрд╝рдВрдХреНрд╢рди рдЬреЛ рдЬрдм рднреА locale рдмрджрд▓рддрд╛ рд╣реИ рддрдм рдХреЙрд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
      • isCookieEnabled: рдХреНрдпрд╛ locale рдХреЛ cookie рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред