vue-routeルーティング管理のインストールと設定方法

vue-routeルーティング管理のインストールと設定方法

導入

Vue RouterVue.jsの公式ルーティング マネージャーです。 Vue.jsのコアと深く統合されているため、シングルページ アプリケーションを簡単に構築できます。含まれる機能は次のとおりです:

  • ネストされたルート/ビューテーブル
  • モジュール式のコンポーネントベースのルーティング構成
  • ルートパラメータ、クエリ、ワイルドカード
  • Vue.js トランジションシステムに基づくトランジション効果を表示する
  • きめ細かなナビゲーションコントロール
  • 自動的にアクティブ化された CSS クラスを持つリンク
  • HTML5 履歴モードまたはハッシュモード、IE9 では自動的にダウングレードされる
  • カスタムスクロールバーの動作

インストール

インストールコマンド

npm インストール vue-router --save

モジュールプロジェクトで使用する場合は、 Vue.use()を介してルーティング関数を明示的にインストールする必要があります。

'vue' から Vue をインポートします
'vue-router' から VueRouter をインポートします。

Vue.use(VueRouter)

モジュール使用

以前、スキャフォールディングvue-cliを使用してプロジェクトを作成したとき、 router実際に構成されていました。プロジェクトが作成されると、プロジェクトのルート ディレクトリにrouterフォルダーが作成され、 routerの下に次の内容のindex.jsファイルが作成されます。

「vue」からVueをインポートします。
「vue-router」から VueRouter をインポートします。
「../views/Home.vue」から Home をインポートします。

// 1. 他のプラグインを使用する場合は、Vue.use を使用してプラグインをインストールする必要があります Vue.use(VueRouter);

// 2. ルートを定義します。各ルートはコンポーネントにマップする必要があります。constroutes = [
  {
    パス: "/"、
    名前: "ホーム",
    コンポーネント: ホーム、
  },
  {
    パス: "/about",
    名前: "概要",
    コンポーネント: について
  },
];

// 3. ルーターインスタンスを作成する const router = new VueRouter({
  // ルートとコンポーネント間のアプリケーション関係を設定します。ルート、// (省略形) ルートと同等: ルート
});

// 4. ルーター オブジェクトをエクスポートし、main.js で export default router を参照します。

このファイルは、ルーティングを構成するためのものです。最後に、 routerオブジェクトをエクスポートすると、プロジェクトのmain.jsで参照できるようになります。

「vue」からVueをインポートします。
「./App.vue」からアプリをインポートします。
「./router」からルーターをインポートします。

Vue.config で productionTip を false に設定します。

新しいVue({
  router, // vueインスタンスにルーターオブジェクトを追加すると、ルーティングを使用できるようになります render: (h) => h(App),
}).$mount("#app");

当社の 2 つのコンポーネント コードであるAboutHome次のとおりです。

// About.vue
<テンプレート>
  <div class="about">
    <h1>について</h1>
  </div>
</テンプレート>

<スクリプト>
エクスポートデフォルト{
  名前: 「概要」
}
</スクリプト>

<スタイルスコープ>
</スタイル>

// ホーム.vue
<テンプレート>
  <div class="home">
    <h1>ホーム</h1>
  </div>
</テンプレート>

<スクリプト>

エクスポートデフォルト{
  名前: "ホーム",
};
</スクリプト>

<スタイルスコープ>
</スタイル>

最後に、 App.vueに次のコードを記述します。

テンプレート>
  <div id="アプリ">
    <router-link to="/">ホーム</router-link>
    <router-link to="/about">について</router-link>
    <ルータービュー></ルータービュー>
  </div>
</テンプレート>

<スタイル lang="scss">
</スタイル>

<router-link>を使用してリンクを読み込み、次にto使用してジャンプ先のリンクを表します。最後に、 <router-link> <a>タグにレンダリングされます。
<router-view>はルートの出口です。つまり、対応するurlの下のコードがこの場所にレンダリングされます。

HTML5 履歴モード

しかし、プログラムを起動してページにアクセスすると、 urlアドレスに#が表示されます。

これは、 vue-routerデフォルトでhashモード ( URLhashを使用して完全なURLをシミュレートする) に設定されているため、 URLが変更されてもページがリロードされないためです。
醜いhashが必要ない場合は、ルーターのhistoryモードを使用できます。このモードでは、 history.pushState API最大限に活用して、ページをリロードせずにURLジャンプを完了します。

const ルーター = 新しい VueRouter({
  モード: '履歴'、
  ルート: [...]
})

routerフォルダーの下のindex.jshistorymodeを追加し、 #記号なしでhttp://localhost:8080/再度アクセスするだけです。

注: historyモードではバックグラウンド構成のサポートも必要です。私たちのアプリケーションはシングルページ クライアント アプリケーションであるため、バックエンドが正しく構成されていない場合、ユーザーがブラウザーで他のurlアドレスに直接アクセスすると 404 が返され、これは好ましくありません。

したがって、すべての状況をカバーするには、サーバー上に候補リソースを追加する必要があります。URL URLどの静的リソースとも一致しない場合は、 app依存するページである同じindex.htmlページを返す必要があります。

vue-route ルーティング管理のインストールと設定に関するこの記事はこれで終わりです。より関連性の高い vue route のインストールと設定の内容については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • vue-routerネストルーティングが応答しない問題を解決する
  • vue-router ルーティングインターセプションによって発生するデッドループ問題を解決する
  • vueはaddRoutesを複数回解決してルートを追加し、操作を繰り返します。
  • vue + routerルーティングジャンプが機能しない理由の1つを解決する
  • vue update router-viewの再利用コンポーネントの内容が更新されない問題を解決する
  • Vue は権限制御ルーティングを実装します (vue-router は動的にルーティングを追加します)
  • Vue ルーティング オブジェクト attribute.meta $route.matched の詳細な説明

<<:  MySQL (5.6 以下) の JSON 解析の詳細な例

>>:  vmware14Pro で Ubuntu システム インターフェイスが小さすぎる問題の解決方法の詳細な説明

推薦する

MySQL の 2 種類の一時テーブルの使用方法の詳細な説明

外部一時テーブルCREATE TEMPORARY TABLE によって作成された一時テーブルは、外部...

MySQL の NULL 値に関する体験談と分析チュートリアルシリーズ

目次1. テストデータ2. ヌル値による不便3. スペース、空の値、null をどのように判断すれば...

Dockerモードで起動したTomcatのホームページにアクセスすると404エラーが発生する

シナリオ: docker で tomcat を起動すると (Alibaba Cloud からダウンロ...

テーブル内の要素のドラッグと並べ替えの問題について簡単に説明します

最近、要素テーブルを使用すると、並べ替えの問題によく遭遇します。単純な並べ替えであれば、要素の公式が...

MySQL NULLがピットを引き起こした

比較演算子でNULLを使用する mysql> 1>NULLを選択します。 +------...

Minio 軽量オブジェクト ストレージ サービスのインストールとブラウザの使用チュートリアル

目次導入インストール1. マウントするフォルダを作成する2. イメージをプルする3. コンテナを作成...

Mac OS 10.11 での MySQL 5.7.12 のインストールと設定のチュートリアル

Mac OS 10.11 に MySQL をインストールして設定する方法を、主に写真を使って手順を簡...

JavaScript DOM オブジェクト操作

目次1. コア1. Domノードを取得する2. ノードの更新2.1 実践演習3. Domノードを削除...

DockerにFastDFSをインストールする方法

画像をプルする docker pull season/fastdfs:1.2トラッカーを開始 doc...

MySQL 8.0.15 で MGR シングル マスターと複数スレーブを構成する方法

1. はじめにMySQL グループ レプリケーション (略して MGR) は文字通り MySQL グ...

MySQLで自動作成時間と変更時間を設定する方法の例

この記事では、MySQL の自動作成時刻と変更時刻を設定する方法について説明します。ご参考までに、詳...

jQueryはシンプルなボタンの色の変更を実装します

HTML と CSS で、ボタンの色を設定したいとします。 目的の効果は得られますが、プロセスはかな...

Windows 10 での MySQL 5.7.21 インストーラのインストール グラフィック チュートリアル

MySQLをインストールしてメモしておきます。うまくインストールできるか分かりませんが、試してみます...

jQueryはテーブル行データのスクロール効果を実現します

この記事の例では、テーブル行データのスクロール効果を実現するためのjQueryの具体的なコードを参考...

Linux tac コマンドの実装例

1. コマンドの紹介tac (cat の逆順) コマンドは、ファイルの内容を行単位で逆順に出力します...