Internationalization
Localization support IE11, Edge, Chrome, Firefox & Safari.
How does it work?
{
"dashboard": "Dashboard",
"default": "Default",
"analytics": "Analytics",
...
...
}const config = {
...
i18n: 'en', // 'en' - English, 'fr' - French, 'ro' - Romanian, 'zh' - Chinese
...
}import { IntlProvider } from 'react-intl';
function loadLocaleData(locale) {
switch (locale) {
case 'fr':
return import('./../compiled-lang/fr.json');
case 'ro':
return import('./../compiled-lang/ro.json');
case 'zh':
return import('./../compiled-lang/zh.json');
default:
return import('./../compiled-lang/en.json');
}
}
const App = () => {
const customization = useSelector((state) => state.customization);
const [messages, setMessages] = useState();
useEffect(() => {
loadLocaleData(customization.locale).then(d=>{
setMessages(d.default);
});
}, [customization]);
return (
<React.Fragment>
{ messages && <IntlProvider
locale='fr'
defaultLocale="en"
messages={messages}
>
...
...
...
</IntlProvider> }
</React.Fragment>
);
};
export default App;Last updated