ホームページ ウェブフロントエンド Vue.js ルーティングを使用して Vue で国際的な多言語切り替えを実装するにはどうすればよいですか?

ルーティングを使用して Vue で国際的な多言語切り替えを実装するにはどうすればよいですか?

Jul 22, 2023 pm 12:17 PM
グローバリゼーション vueルーティング 多言語切り替え

ルーティングを使用して Vue で国際的な多言語切り替えを実装するにはどうすればよいですか?

多言語 Web サイトを開発する場合、重要なニーズの 1 つは、ユーザーが選択した言語に応じて Web サイトのコンテンツを切り替えられるようにすることです。 Vue.js は人気のある JavaScript フレームワークであり、Vue Router プラグインを使用することでルーティング機能を簡単に実装できます。この記事では、ルーティングを使用して Vue で国際的な多言語切り替えを実装する方法を紹介します。

まず、Vue Router プラグインをインストールする必要があります。 npm コマンドを使用してインストールできます:

npm install vue-router
ログイン後にコピー

インストールが完了したら、Vue Router を Vue プロジェクトに導入し、ルーティングを構成できます。 main.js ファイルでは、次のように Vue Router を導入して使用できます。

import Vue from 'vue'
import VueRouter from 'vue-router'

Vue.use(VueRouter)

const routes = [
  {
    path: '/',
    name: 'Home',
    component: () => import('@/views/Home.vue')
  },
  // 其他路由配置...
]

const router = new VueRouter({
  mode: 'history',
  base: process.env.BASE_URL,
  routes
})

export default router
ログイン後にコピー

次に、各言語に対応するテキスト リソース ファイルを準備する必要があります。 src ディレクトリに新しい lang フォルダーを作成し、その中に en.js や zh.js などの複数の言語ファイルを作成します。これらの言語ファイルは、対応するテキスト リソースを含むオブジェクトを公開する必要があります。

// en.js
export default {
  home: 'Home',
  about: 'About',
  contact: 'Contact'
}

// zh.js
export default {
  home: '首页',
  about: '关于我们',
  contact: '联系我们'
}
ログイン後にコピー

次に、Vue コンポーネントでルーティング関数と国際化関数を使用します。テキストを表示する必要がある場合、$router オブジェクトを通じて現在の言語に対応するテキストを取得できます。

<template>
  <div>
    <nav>
      <router-link :to="{ name: 'Home' }">{{ $t('home') }}</router-link>
      <router-link :to="{ name: 'About' }">{{ $t('about') }}</router-link>
      <router-link :to="{ name: 'Contact' }">{{ $t('contact') }}</router-link>
    </nav>
    <router-view></router-view>
  </div>
</template>

<script>
export default {
  name: 'App',
  methods: {
    $t(key) {
      const lang = this.$router.currentRoute.meta.lang
      return this.$options.lang[lang][key] || ''
    }
  },
  metaInfo() {
    return {
      lang: 'en'
    }
  }
}
</script>
ログイン後にコピー

上記のコードでは、$t## を呼び出してテキスト リソースを取得します。 # 方法 。 $t メソッドは、まず $router.currentRoute.meta.lang から現在の言語を取得し、次に $options.lang から対応するテキスト リソースを取得します。物体。対応するテキストが見つからない場合は、空の文字列が返されます。

コンポーネント内の

$t メソッドとテキスト リソース オブジェクトにアクセスするには、methods 属性で $t を定義する必要があります。 Vue インスタンス メソッドの $options オブジェクトの lang プロパティを通じてテキスト リソース オブジェクトをコンポーネントに公開します。

最後に、ルーティング設定に

beforeEach フック関数を追加して、ユーザーが選択した言語に基づいて現在の言語を切り替える必要があります。

// 在router/index.js中的router配置中添加
router.beforeEach((to, from, next) => {
  const lang = to.query.lang || 'en'
  // 设置当前路由的meta信息,在组件中可以通过this.$router.currentRoute.meta.lang获取
  to.meta.lang = lang
  next()
})
ログイン後にコピー
上記の場合コード、

beforeEachフック関数は to.query.lang を使用して、ユーザーが選択した言語を取得します。言語が選択されていない場合は、デフォルトで英語が使用されます。言語情報は、コンポーネントで使用するために、to.meta.lang を介して現在のルートの meta 属性に保存されます。

この時点で、ルーティングを使用して Vue で国際的な多言語切り替えを実装するプロセス全体が完了しました。 Vue Router プラグインといくつかの簡単な設定を使用することで、Web サイトの多言語切り替え機能を簡単に実装できます。この記事が、Vue プロジェクトでの多言語切り替えの実装に役立つことを願っています。

以上がルーティングを使用して Vue で国際的な多言語切り替えを実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP開発ガイド:簡易多言語切り替え機能の実装 PHP開発ガイド:簡易多言語切り替え機能の実装 Jul 01, 2023 pm 08:58 PM

PHP 開発ガイド: 簡単な多言語切り替え機能の実装 はじめに: インターネットの発展に伴い、ますます多くの Web サイトやアプリケーションが多言語機能をサポートする必要があります。 Web開発において、多言語切り替え機能の実装は非常に重要な作業です。この記事では、PHP を使用して簡単な多言語切り替え機能を実装する方法と、開発者が参照できるコード例を紹介します。 1. 準備作業 多言語切り替え機能を実装する前に、いくつかの準備作業を行う必要があります。まず、サポートされている言語を決定し、対応する言語を作成する必要があります

ビットコイン永久契約プラットフォーム ソフトウェア BTC永久契約取引プラットフォーム ビットコイン永久契約プラットフォーム ソフトウェア BTC永久契約取引プラットフォーム Feb 03, 2024 am 08:57 AM

ビットコイン永久契約プラットフォーム ソフトウェアには、binance、CryptoGro、UniswapV3、Bit pro、AMGEX、dYdX、PKEX、currency system、BearBit、Deepcoin が含まれます。各プラットフォームの関連紹介は以下のとおりです。興味のある方はご覧ください。 BTC 永久契約取引所の完全なリスト 1. Binance: 多くの投資家は、Binance 公式 Web サイトの取引所に精通しており、使用しています。 2013 年に設立された Binance の公式ウェブサイトは、法定通貨取引、通貨から仮想通貨への取引、コントラクト取引などのサービスを提供しています。 8 年間の開発を経た後も、Binance の公式ウェブサイトは依然として仮想通貨取引所のトップ 10 にランクインしており、ブロックチェーン取引の分野における Binance の継続的な強さを証明しています。 2. クリプトG

Gin フレームワークを使用して国際化および多言語サポート機能を実装する Gin フレームワークを使用して国際化および多言語サポート機能を実装する Jun 23, 2023 am 11:07 AM

グローバル化の進展とインターネットの普及に伴い、さまざまな人々のニーズを満たすために、ますます多くの Web サイトやアプリケーションが国際化や多言語サポート機能の実現に努め始めています。これらの機能を実現するには、開発者はいくつかの高度なテクノロジーとフレームワークを使用する必要があります。この記事では、Gin フレームワークを使用して国際化と多言語サポート機能を実装する方法を紹介します。 Gin フレームワークは、Go 言語で書かれた軽量の Web フレームワークです。効率的で使いやすく、柔軟性が高いため、多くの開発者にとって好ましいフレームワークとなっています。その上、

FastAPI フレームワークを使用して国際的な Web アプリケーションを構築する FastAPI フレームワークを使用して国際的な Web アプリケーションを構築する Sep 29, 2023 pm 03:53 PM

FastAPI フレームワークを使用して国際的な Web アプリケーションを構築します。FastAPI は、Python 型の注釈と高性能の非同期サポートを組み合わせた高性能 Python Web フレームワークで、Web アプリケーションの開発をよりシンプル、高速、信頼性の高いものにします。国際的な Web アプリケーションを構築する場合、FastAPI は、アプリケーションで複数の言語を簡単にサポートできるようにする便利なツールと概念を提供します。以下に、FastAPI フレームワークを使用してビルドする方法を紹介する具体的なコード例を示します。

ThinkPHP6 多言語切り替え: 国際的なアプリケーションの実現 ThinkPHP6 多言語切り替え: 国際的なアプリケーションの実現 Aug 25, 2023 pm 08:31 PM

ThinkPHP6 多言語切り替え: 国際的なアプリケーションの実現 インターネットの急速な発展とグローバリゼーションのプロセスに伴い、さまざまな国や地域のユーザーのニーズを満たすために、ますます多くの Web サイトやアプリケーションが多言語機能をサポートする必要があります。 ThinkPHP6 を使用して Web アプリケーションを開発する場合、多言語切り替えを実現することは重要なタスクです。この記事では、ユーザーに便利な多言語エクスペリエンスを提供するために、ThinkPHP6 で国際アプリケーションを実装する方法を紹介します。なぜ多言語切り替えが必要なのでしょうか?グローバリゼーションの文脈において、ユーザーはインターネットを使用します

PHP8.0の国際化ライブラリ PHP8.0の国際化ライブラリ May 14, 2023 pm 05:51 PM

PHP8.0 の国際化ライブラリ: UnicodeCLDR および Intl 拡張 グローバリゼーションのプロセスに伴い、言語や地域を超えたアプリケーションの開発がますます一般的になりました。国際化はこの目標を達成するために重要な部分です。 PHP8.0 では、UnicodeCLDR および Intl 拡張機能が導入され、どちらも開発者により優れた国際化サポートを提供します。 UnicodeCLDRUnicodeCLDR(CommonLocaleDat

PHP を使用した多言語 Web サイトの構築: 言語の壁を取り除く PHP を使用した多言語 Web サイトの構築: 言語の壁を取り除く Feb 19, 2024 pm 07:10 PM

1. 次のフィールドを含む、多言語データ用の新しいテーブルを作成するデータベースを準備します: CREATETABLEtranslations(idINTNOTNULLAUTO_INCREMENT,localeVARCHAR(255)NOTNULL,keyVARCHAR(255)NOTNULL,valueTEXTNOTNULL,PRIMARYKEY(id)); 2. 言語切り替えメカニズムを設定します。 Web サイト上で言語スイッチャーをトップまたはサイドバーに追加して、ユーザーが好みの言語を選択できるようにします。 // 現在の言語を取得 $current_locale=isset($_GET["locale"])?$_

Webman フレームワークを使用して国際化と多言語サポートを実現するにはどうすればよいですか? Webman フレームワークを使用して国際化と多言語サポートを実現するにはどうすればよいですか? Jul 09, 2023 pm 03:51 PM

現在、インターネット技術の継続的な発展に伴い、多言語化と国際化をサポートする必要がある Web サイトやアプリケーションがますます増えています。 Web 開発では、フレームワークを使用すると、開発プロセスを大幅に簡素化できます。この記事では、Webman フレームワークを使用して国際化と多言語サポートを実現する方法を紹介し、いくつかのコード例を示します。 1. Webman フレームワークとは何ですか? Webman は、Web アプリケーション開発のための豊富な機能と使いやすいツールを提供する軽量の PHP ベースのフレームワークです。その 1 つは国際化と多元化です。

See all articles