Amélioration du traitement des messages en créant un service
This commit is contained in:
parent
31922417b6
commit
accaf328c2
File diff suppressed because one or more lines are too long
30
src/index.js
30
src/index.js
@ -5,38 +5,10 @@ import ReactDOM from 'react-dom';
|
||||
import { IntlProvider } from 'react-intl';
|
||||
|
||||
import App from './App';
|
||||
import messages from './messages';
|
||||
import reportWebVitals from './reportWebVitals';
|
||||
import { i18nConfig, langJson, language } from './services/message.service';
|
||||
|
||||
|
||||
const GLOBAL_MESSAGE_KEY = "global";
|
||||
const i18nConfig = {
|
||||
defaultLocale: 'fr',
|
||||
messages,
|
||||
};
|
||||
|
||||
const language = function () {
|
||||
const queryString = window.location.search;
|
||||
const urlParams = new URLSearchParams(queryString);
|
||||
let lang = urlParams.get("lang");
|
||||
if (messages[lang] === undefined) {
|
||||
lang = navigator.language.split(/[-_]/)[0];
|
||||
}
|
||||
return lang;
|
||||
}
|
||||
|
||||
const langJson = function () {
|
||||
const messageLocalized = i18nConfig.messages[language()];
|
||||
const messageGlobal = i18nConfig.messages[GLOBAL_MESSAGE_KEY];
|
||||
const messageMerged = {
|
||||
...messageLocalized,
|
||||
...messageGlobal
|
||||
};
|
||||
|
||||
console.log(JSON.stringify(messageMerged))
|
||||
return messageMerged;
|
||||
}
|
||||
|
||||
ReactDOM.render(
|
||||
<React.StrictMode>
|
||||
<IntlProvider
|
||||
|
34
src/services/message.service.js
Normal file
34
src/services/message.service.js
Normal file
@ -0,0 +1,34 @@
|
||||
/**
|
||||
* messageHandler
|
||||
* author : adm
|
||||
*/
|
||||
|
||||
import messages from '../messages';
|
||||
|
||||
|
||||
const GLOBAL_MESSAGE_KEY = "global";
|
||||
export const i18nConfig = {
|
||||
defaultLocale: "fr",
|
||||
messages,
|
||||
};
|
||||
|
||||
export const language = function () {
|
||||
const queryString = window.location.search;
|
||||
const urlParams = new URLSearchParams(queryString);
|
||||
let lang = urlParams.get("lang");
|
||||
if (messages[lang] === undefined) {
|
||||
lang = navigator.language.split(/[-_]/)[0];
|
||||
}
|
||||
return lang;
|
||||
};
|
||||
|
||||
export const langJson = function () {
|
||||
const messageLocalized = i18nConfig.messages[language()];
|
||||
const messageGlobal = i18nConfig.messages[GLOBAL_MESSAGE_KEY];
|
||||
const messageMerged = {
|
||||
...messageLocalized,
|
||||
...messageGlobal,
|
||||
};
|
||||
|
||||
return messageMerged;
|
||||
};
|
Loading…
x
Reference in New Issue
Block a user