A function that returns user's locale as an IETF language tag, based on all available sources.
npm install get-user-locale
or yarn add get-user-locale
.import getUserLocale from 'get-user-locale'
.const userLocale = getUserLocale();
getUserLocale()
A function that returns user's preferred locale as an IETF language tag, based on all available sources.
import getUserLocale from 'get-user-locale';
getUserLocale(); // 'de-DE'
or
import { getUserLocale } from 'get-user-locale';
getUserLocale(); // 'de-DE'
getUserLocale()
may be called with an optional options
argument.
options
object may contain the following properties:
Property | Description | Default value |
---|---|---|
fallbackLocale |
A locale to use as a fallback. | en-US |
useFallbackLocale |
Whether to use the fallback locale. | true |
getUserLocales()
A function that returns an array of user's preferred locales as an IETF language tags, based on all available sources.
import { getUserLocales } from 'get-user-locale';
getUserLocales(); // ['de-DE', 'de', 'en-US', 'en']
getUserLocales()
may be called with an optional options
argument.
options
object may contain the following properties:
Property | Description | Default value |
---|---|---|
fallbackLocale |
A locale to use as a fallback. | en-US |
useFallbackLocale |
Whether to use the fallback locale. | true |
There are a few ways of determining user's locale:
window.navigator.languages
window.navigator.language
…languages
is an array of strings, …language
is a string. Some browsers return mixed-case IETF language tags (e.g. de-DE
), while others return lowercase ones (e.g. de-de
). Finally, non-browser environments will not return anything, so you need a fallback.
Get-User-Locale does the following:
-
is always uppercased),en-US
, so if all else fails, you will get a result that won't crash your app.The MIT License.
Wojciech Maj |