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プロパティを理解する

推薦する

CSS3 で六角形の境界線を実装するサンプルコード

一番外側の boxF は 120 度回転し、2 番目の boxS は -60 度回転し、3 番目の ...

Vue はボタンをクリックしてファイルをダウンロードする操作コードを実装します (バックエンド Java)

前回の記事では、ボタンをクリックしてファイルをダウンロードするVueの機能を紹介しました。今日は、ボ...

Linux で txt を mysql にインポートする方法

序文昨日、小さなプロジェクトを書いていたときに、txt ドキュメントのデータを mysql データベ...

Linux\Nginx 環境での仮想ドメイン名の設定とテスト検証

Nginx 仮想ドメイン名設定を使用すると、ドメイン名を購入せずに特定のドメイン名を介してローカル ...

UbuntuにProtobuf 3をインストールするための詳細なチュートリアル

いつインストールするかprotoc コマンドを使用しても Protoc が見つからない場合は、インス...

divは、自動入力スタイルをブロックする入力ボックスとして入力を使用せずにコンテンツを入力できます。

今日、私は公開用の動的なウィンドウ スタイルを設計しましたが、マウスで入力をクリックしたときにブラウ...

dockerコンテナにviコマンドをインストールする簡単な操作

docker コンテナを使用する場合、vim がインストールされていないことがあり、vim コマンド...

LNMP と phpMyAdmin を Docker にデプロイする方法

環境準備:複数のコンテナに基づいてホストに lnmp をデプロイします。 nginx サービス: 1...

CocosCreatorでリストを作成する方法

CocosCreator バージョン: 2.3.4 Cocos には List コンポーネントがない...

HTML コード作成ガイド

共通コンベンションタグ自己終了タグ。閉じる必要はありません (例: img input br hr ...

Nginx プロセス スケジューリングの問題の詳細な説明

Nginx は、マスター プロセス (MasterProcess) と、同じ数のホスト CPU コア...

Vue で Alibaba のアイコンフォント ベクター アイコンを使用する方法について

インターネット上には多くのインポート方法があり、公式も3つのインポート方法を提供していますが、インポ...

MySQLサービスを削除する具体的な方法

MySQLは次のエラーを表示します「コントロール パネル -> 管理ツール -> サービ...

MySQLとNavicatプレミアムのインストールと設定の詳細な手順

前提条件: Mac、zsh がインストールされ、bash のときに mysql がダウンロードされ、...

jsは多次元配列を1次元配列に変換し、それを並べ替えます

目次まず多次元配列の平坦化についてお話しましょう方法 1: flat()方法 2: 空の文字列を連結...