rooks
Version:
Essential React custom hooks ⚓ to super charge your components!
27 lines (26 loc) • 774 B
JavaScript
import { useState } from "react";
import { useWindowEventListener } from "./useWindowEventListener";
function getLanguage() {
// eslint-disable-next-line no-negated-condition
if (typeof navigator !== "undefined") {
// eslint-disable-next-line @typescript-eslint/dot-notation
return navigator.language;
}
else {
return null;
}
}
/**
* useNavigatorLanguage hook
* Returns the language of the navigator
*
* @returns {Language}
* @see https://react-hooks.org/docs/useNavigatorLanguage
*/
export function useNavigatorLanguage() {
var _a = useState(getLanguage), language = _a[0], setLanguage = _a[1];
useWindowEventListener("languagechange", function () {
setLanguage(getLanguage);
});
return language;
}