Merged PR 752: [FB対応]Edgeで表示言語が切り替わらないことがある

## 概要
[Task3728: 原因調査&調査結果をPBIに記載する](https://paruru.nds-tyo.co.jp:8443/tfs/ReciproCollection/fa4924a4-d079-4fab-9fb5-a9a11eb205f0/_workitems/edit/3728)

- cookieから言語情報取得時にほかのcookieが存在していると、うまく取得できなくなってしまう
  - https://into-the-program.com/javascript-cant-get-value-cookie-name-array/
  - この方法でほかのcookieがある場合でも半角スペースを排除して正しく取得できるようにした。

## レビューポイント
- 特になし

## 動作確認状況
- ローカルで確認

## 補足
- 相談、参考資料などがあれば
This commit is contained in:
saito.k 2024-02-19 01:49:23 +00:00
parent b4df229de4
commit b7db9c5fad

View File

@ -43,14 +43,18 @@ const App = (): JSX.Element => {
// Language読み取り
useLayoutEffect(() => {
const language = document.cookie
.trim()
.split(";")
.map((x) => x.split("="))
.find((x) => x.length === 2 && x[0] === "language");
const { cookie } = document;
if (language) {
i18n.changeLanguage(language[1]);
if (cookie) {
const cookieArray = cookie.split(";");
const language = cookieArray.find((x) =>
// 先頭の空白を削除してから判定
x.trim().startsWith("language=")
);
if (language) {
i18n.changeLanguage(language.split("=")[1]);
}
}
}, [i18n]);