preferred-languages
Track the user's preferred languages (navigator.languages).
| Package | @vizejs/composable/preferred-languages |
| Own the source | vize lib pull composable:preferred-languages |
| Runtime exports | usePreferredLanguages |
| Gzip budget | 1280 B |
Usage
import { usePreferredLanguages } from "@vizejs/composable/preferred-languages";
Runtime contract
| Utility | Category | Stability | SSR | Hydration | Cleanup | Targets | Host globals | Uses |
|---|---|---|---|---|---|---|---|---|
usePreferredLanguages |
i18n | experimental | deterministic-fallback | caller-managed | reactive-scope | web, desktop | window |
tryOnScopeDispose |
API
usePreferredLanguages
Track the user's preferred languages (navigator.languages). Updates on languagechange. The default host is gated on window, so Node's own navigator never leaks the server locale into the render; server renders expose ssrLanguages. Inside a component the languages are read after mounting, so hydration renders ssrLanguages first. The listener is removed with the owning reactive scope.
function usePreferredLanguages( options: UsePreferredLanguagesOptions = {}, ): Readonly<Ref<readonly string[]>>
Types
PreferredLanguagesHost
Window-like capability observed by usePreferredLanguages.
| Member | Type | Description |
|---|---|---|
navigator |
{ readonly languages: readonly string[]; readonly language?: string } |
Navigator exposing the user's languages. |
UsePreferredLanguagesOptions
Options for usePreferredLanguages.
| Member | Type | Description |
|---|---|---|
ssrLanguages? |
readonly string[] |
Languages exposed during server rendering. Pass the request's Accept-Language list to keep hydration stable. |
host? |
MaybeRefOrGetter<PreferredLanguagesHost | null | undefined> |
Reactive window capability for alternate runtimes and tests. |