お知らせ
2023.12.5(Tue)
目次
こんにちは、樋口です。
今回は、Nuxt.jsからライブラリを読み込むだけで、簡単に英語などの多言語化対応を行うことができるnuxt-i18nについてご紹介します。
今回は下記ライブラリを使用して説明をしていきます。
初めにコマンドプロンプトで、使用するNuxt.jsのプロジェクトフォルダまで移動します。移動後、以下のコマンドを実行します。
これで対象のプロジェクトに、ライブラリを追加することができました。次に実際のライブラリの使用方法について解説していきます。
次に、nuxt.config.jsに設定を追加します。
export default { mode: 'universal', ・・・・・ modules: [ // Doc: https://axios.nuxtjs.org/usage '@nuxtjs/axios', [ 'nuxt-i18n', { locales: [ { code: 'ja', iso: 'ja_JP', file: 'ja.json' }, { code: 'en', iso: 'en-US', file: 'en.json' } ], defaultLocale: 'ja', vueI18n: { fallbackLocale: 'ja' }, vueI18nLoader: true, lazy: true, langDir: 'language/' } ] ], ・・・・・ }
次に各言語に対応したファイルを、以下のフォルダに格納します。
jp.json
{ "message": "日本語表示のテスト" }
{ "message": "Test Japanese display" }
今回サンプル用に作成した、Vueファイルを下記に記載します。
– index.vue
<template> <div class="samaple__conntents"> <diV style="margin-top: 20px;"> <h1>nuxt-i18nプラグインサンプル</h1> </diV> <diV style="margin-top: 20px;"> {{ $t('message') }} </diV> <div> <nuxt-link :to="switchLocalePath('en')">English</nuxt-link> </div> <div> <nuxt-link :to="switchLocalePath('ja')">japanese</nuxt-link> </div> </div> </template> <script> export default { data() { return { count: 0 } } } </script> <style> .samaple__conntents { margin: 0 auto; min-height: 100vh; justify-content: center; align-items: center; text-align: center; } </style>
今回紹介したライブラリを使用すれば、簡単に多言語対応を行うことが可能となります。今後多言語対応のページ作る際は、ぜひ試してみてください。
今後もNuxt.jsでの便利ライブラリについて紹介していけたらと思っています。
それではまた。
《関連記事》