Vueはvueメタ情報を使用して各ページのタイトルとメタ情報を設定します。

Vueはvueメタ情報を使用して各ページのタイトルとメタ情報を設定します。

title: vue は vue-meta-info を使用して各ページのタイトルとメタ情報を設定します #記事ページの表示名。通常は中国語です

date: 2019-11-20 16:30:16 #記事が作成された時間。通常は変更されません。もちろん、任意に修正できます。

カテゴリ: vue #カテゴリ

tags: [vue] #Article タグ、空でも可、複数タグの形式を使用してください、注意: 後ろにスペースがあります

説明: vue は vue-meta-info を使用して各ページのタイトルとメタ情報を設定します。

vue-meta-info を使用してタイトルとメタを設定するには、次の手順に従います。

1. インストール

npm インストール vue-meta-info --save

2. main.jsにインポートする

'vue-meta-info' から MetaInfo をインポートします。
Vue.use(メタ情報)

3. Vueページで設定する

<テンプレート>
  ...
</テンプレート>
 
<スクリプト>
  エクスポートデフォルト{
    メタ情報:
      title: 'My Example App', // タイトルを設定
      meta: [ // メタを設定する
      	{                
        	名前: 'キーワード',
        	内容: 「私のサンプルアプリ」
      	},
      	{
        	名前: '説明',
        	内容: 「これはウェブページの説明です」
   		 }
      ]
      link: [{ // リンクを設定
       		rel: 'asstes',
        	href: 'https://assets-cdn.github.com/'
      }]
    }
  }
</スクリプト>

タイトルやメタが非同期で読み込まれる場合は、これを使用する必要があるかもしれません

<テンプレート>
  ...
</テンプレート>
 
<スクリプト>
  エクスポートデフォルト{
    名前: '非同期'、
    メタ情報() {
      戻る {
        タイトル: this.pageName
      }
    },
    データ () {
      戻る {
        ページ名: '読み込み中'
      }
    },
    マウントされた(){
      タイムアウトを設定する(() => {
        this.pageName = '非同期'
      }, 2000)
    }
  }
</スクリプト> 

Vue SSR を使用してページをレンダリングする場合は、次の点に注意する必要があります。

動的な更新がないため、すべてのライフサイクル フック関数のうち、サーバー側レンダリング (SSR) プロセス中に呼び出されるのは beforeCreate と created のみです。つまり、他のライフサイクル フック関数 (beforeMount や mounted など) のコードはクライアント側でのみ実行されます。 また、setInterval を使用してタイマーを設定するなど、beforeCreate および created ライフサイクル中にグローバルな副作用が発生するコードを避ける必要があることにも注意してください。クライアント側のみのコードでは、タイマーを設定し、beforeDestroy または destroy ライフサイクル中にそれを破棄することができます。ただし、SSR 中は destroy フック関数が呼び出されないため、タイマーは永久に保持されます。これを回避するには、副作用コードを beforeMount または mount ライフサイクルに移動します。

上記の制約に基づいて、現在、静的データを使用して metaInfo をレンダリングできます。次に例を示します。

<テンプレート>
  ...
</テンプレート>
 
<スクリプト>
  エクスポートデフォルト{
    メタ情報:
      title: 'My Example App', // タイトルを設定
      meta: [{ // メタを設定
        名前: 'キーワード',
        内容: 「私のサンプルアプリ」
      }]
      link: [{ // リンクを設定
        rel: 'asstes',
        href: 'https://assets-cdn.github.com/'
      }]
    }
  }
</スクリプト> 

このとき、vueMetaInfo は、ssr のコンテキストでタイトル変数とレンダリング オブジェクトをマウントするのに役立ちます。次のようなものです:

コンテキスト = {
  ...
  タイトル: 「私のサンプルアプリ」
  与える: {
    メタ: 関数 () { ... },
    リンク: 関数 () { ... }
  }
}

この時点で、テンプレートを変換できます。

<!DOCTYPE html>
<html>
  <ヘッド>
    <メタ文字セット="utf-8">
    <タイトル>{{タイトル}}</タイトル>
    {{{render.meta && render.meta()}}}
    {{{render.link && render.link()}}}
  </head>
  <本文>
    <!--vue-ssr-outlet-->
  </本文>
</html>

これにより、必要なデータをレンダリングできるようになります。注目すべきは、

<テンプレート>
  ...
</テンプレート>
 
<スクリプト>
  エクスポートデフォルト{
    名前: '非同期'、
    メタ情報() {
      戻る {
        タイトル: this.pageName
      }
    },
    データ () {
      戻る {
        ページ名: '読み込み中'
      }
    },
    マウントされた(){
      タイムアウトを設定する(() => {
        this.pageName = '非同期'
      }, 2000)
    }
  }
</スクリプト> 

知らせ:

このフォームはデータを定義するために使用されますが、サーバー側のレンダリングには create と beforeCreate 以外のマウントされたフックがないため、最終的にレンダリングされたタイトルはまだ読み込み中です。

要約する

これで、vue meta info を使用して各ページのタイトルとメタ情報を設定する方法についての記事は終了です。より関連性の高い vue 設定ページのタイトルとメタ情報の内容については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM を応援してください。

以下もご興味があるかもしれません:
  • Vue でメタタグとタイトルタグを動的に設定する方法
  • vue-router での meta の使用法の詳細な説明
  • vue-meta でヘッドタグをよりエレガントに管理する方法の詳細な説明
  • vue+vue-meta-info 動的設定メタタグチュートリアル

<<:  W3Cチュートリアル(1):W3Cを理解する

>>:  CSS transform-originプロパティを理解する

推薦する

MySQL テーブルの読み取り、書き込み、インデックス作成、その他の操作の SQL ステートメントの効率最適化の問題を分析します。

前回は、Explain 実行プランの表示、インデックスの分析など、MySQL での SQL クエリの...

h1、h2、h3タグを適切に使用する

Web ページを作成する過程では、<h1>、<h2>、<h3> ...

MySQL 最適化: キャッシュ最適化

何人かのブロガーが私の記事を評価してくれたのは嬉しいです。マークと知り合ってからは、私は彼をフォロー...

HTMLメタの大きな役割

メタ属性には、name と http-equiv の 2 つがあります。 name 属性は主に、We...

Vue 天気予報入門

この記事では、参考までに天気予報を実装するためのVueの具体的なコードを紹介します。具体的な内容は次...

React Contextの理解と応用についてお話ししましょう

目次序文React Context の初見コンテキストの使い方コンテキストを直接取得できるいくつかの...

Windows システムに VirtualBox と Ubuntu 16.04 をインストールするための詳細なチュートリアル

1. ソフトウェアの紹介バーチャルボックスVirtualBox は、無料のオープンソース仮想マシン ...

Web インタビュー Vue カスタム コンポーネントと呼び出しメソッド

輸入:プロジェクトの要件により、同じコードの一部をコンポーネントにカプセル化し、必要な場所にインポー...

Docker ファイルの保存パス、コンテナの起動コマンド操作の取得

コンテナはすでに作成されていますが、その起動パラメータ(データがマウントされる場所)を知る方法 #コ...

突然外部ネットワークからDockerにアクセスできなくなる問題の解決方法

マスターのメソッドによると、原因は sysctl net.ipv4.ip_forward であること...

11 の素晴らしい JavaScript コード リファクタリングのベスト プラクティスの概要

目次1. 関数の抽出2. 重複した条件付きスニペットを結合する3. 条件分岐文を関数に抽出する4. ...

VueとElementUIを組み合わせたスキン変更ソリューション

目次前面に書かれた解決策 1: グローバル スタイル オーバーライドを使用する (フロントエンドに共...

MySQL での order by の使用に関する詳細

目次1. はじめに2. 本文2.1 単一列のソート2.2 複数の列を並べ替える2.3 ソート方法2....

VMware Workstation 14 Pro に Win10 システムをインストールする

この記事では、VMware Workstation 14 Proにシステムをインストールする方法を紹...

同じレベルの要素で Position:fixed と margin-top を一緒に使用する場合の CSS の問題

問題の説明CSS を使用して上部の固定効果を実現したいと思います。 margin-top と pos...