1

node.js アプリで i18next をセットアップしようとしています。今のところ、fr-CA と en-US の 2 つの言語があります。

fr-CA をデフォルトの言語にしたいと思います。構成の前に、app.js で次のように設定しました。

i18next.init({
  debug: true, 
  lng: 'fr-CA', 
  ignoreRoutes: [
   'img/', 
   'public/', 
    'stylesheets/', 
    'js/'
  ]
});

ここに私のフォルダ構造があります

locales/
  dev/
    translation.json
  en/
    translation.json
  fr-CA/
    translation.json
  fr/
    translation.json

サーバーの起動時にコンソール ログを実行して、i18next.lng() の値を確認すると、fr-CA. ただし、ページをロードするとすぐに、コンソールにcurrentLng set to: en-US. そのため、常に locales/en/translation.json ファイルをロードしようとします。

デバッグは、サーバーの起動時に fr-CA、fr、および dev ファイルをロードすることを示しています。しかし、ページが起動するとすぐに en ファイルが読み込まれ、fr-CA のことを完全に忘れているように見えます。私のブラウザは英語なので、そこからこの値を取得していると思います。しかし、なぜそれが変化するのかを見つけることができないようです。

ここで何か見逃しましたか?

ありがとう

4

1 に答える 1