Vue での props の使い方の紹介

Vue での props の使い方の紹介

序文:

Vue では、props を使用して、もともと分離されていたコンポーネントを直列に接続することができます。つまり、子コンポーネントは親コンポーネントから渡されたデータを受け取ることができます。たとえば、子コンポーネントが親コンポーネントのデータを参照する場合、props で変数を宣言し、この変数で親要素のデータを参照することができます。

デモ例:

サブコンポーネント:

<テンプレート>

  <div>

    <h3>私は {{name}}、年齢は {{age}}、趣味は {{hobby}} です。}</h3>、{{flag}}

  </div>

</テンプレート>



<スクリプト>

エクスポートデフォルト{

    名前:'Cpn',

    // シンプルな受信 /* props:['age','hobby','name'], */

    // 受信するデータを宣言し、props を宣言するときに受信データを制限します:{

        名前: {

            //型を宣言する type:String,

            //必須かどうかを宣言します: true、

            // デフォルト値を宣言する default:'デフォルト値'

        },

        年:{

            タイプ:数値、

            必要:true、

            デフォルト:18

        },

        趣味:

            タイプ:文字列、

            必要:false

        },

        フラグ:{

            タイプ:ブール値、

            必要:false

        }

    }

}

</スクリプト>

親コンポーネント:

<テンプレート>

  <div id="アプリ">

    <!-- <cpn name='李明' age="22" hobby="ボール遊び"></cpn>

    <cpn name="Xiaohong" age="20" hobby="ピアノを弾くこと"></cpn> -->

    <cpn name='李明'></cpn>

    <cpn hobby="プログラミング" :flag="フラグ"></cpn>

      <!--注: 現在のコンポーネントデータ内のデータを子コンポーネントに渡す場合は、v-bing: 変数名 = "変数名" の形式で渡す必要があります。渡されるデータがデータ内にない場合は、バインディング命令、つまり v-bind (次のように省略できます) を追加する必要はありません -->

    <button @click="changeFlag">切り替え</button>

  </div>

</テンプレート>

<スクリプト>

'./components/Cpn.vue' から Cpn をインポートします。

エクスポートデフォルト{

  コンポーネント: { Cpn },

  名前:「アプリ」、

  データ() {

    戻る {

      フラグ:false

    }

  },

  メソッド: {

    フラグを変更する(){

      console.log(このフラグ)

      this.flag=!this.flag;

      console.log(このフラグ)

    }

  },

}

</スクリプト>

上記のプログラムを実行すると、親コンポーネントのボタンをクリックして値を切り替えると、子コンポーネントが受け取る値もそれに応じて変更されることがわかります。

子コンポーネントが親コンポーネントからデータを受信する方法は 2 つあります。

  • 方法1:シンプルな受信、受信する変数名を指定するだけ
  • 方法2:特定の受信、受信した変数ごとにデータ型、空にできるかどうか、デフォルト値を選択的に指定する

Vue での props の使い方に関するこの記事はこれで終わりです。Vue での props の使い方についてさらに詳しく知りたい場合は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue サブコンポーネントウォッチがプロパティをリッスンしない問題の解決方法
  • Vueでpropsを使用して値を渡す方法
  • Vue3 親子コンポーネント値転送における props 使用の詳細の簡単な分析
  • Vue3.0 で props メソッドをリッスンする方法

<<:  JDKネイティブスレッドプールのバグを修正するTomcatの実装原理

>>:  CSS 水平プログレスバーと垂直プログレスバーの実装コード

推薦する

MySQL クロスデータベーストランザクション XA 操作の例

この記事では、例を使用して、MySQL のデータベース間トランザクション XA 操作について説明しま...

Vue ログインページでクッキーを使用してパスワードを 7 日間記憶する方法

問題の説明プロジェクトのログインページでは、7日間パスワードを記憶する必要がある機能があります。この...

React Diff Principle の詳細な分析

目次差分アルゴリズムレイヤーごとの比較同じタイプのコンポーネントを比較する同じタイプの要素の比較子ノ...

Linuxターミナルでの一般的なMySQL操作コマンドの詳細な説明

仕える: # chkconfig --list すべてのシステム サービスを一覧表示します # ch...

vue-cli で stimulsoft.reports.js を使用する詳細なチュートリアル

vue-cli は stimulsoft.reports.js を使用します (ナニーレベルのチュー...

Mysql 5.6.37 winx64 インストール デュアル バージョン mysql ノート

マシンに MySQL バージョン 5.0 がすでに存在する場合は、最新バージョンの MySQL のイ...

ふるい抽選を実施するミニプログラム

この記事の例では、ふるい抽選を実装するためのミニプログラムの具体的なコードを参考までに共有しています...

docker を使用して minio と java sdk を構築するプロセスの詳細な説明

目次1minioはシンプル2 Dockerビルド minio 2.1 単一ノード2.2 マルチノード...

VMware 仮想マシンでの Centos8 ブリッジの静的 IP 設定方法

1. ネットワーク接続方法がブリッジされていることを確認する物理ネットワーク接続ステータスのコピーを...

MySQL ストアド プロシージャのエラー処理例の詳細な説明

この記事では、例を使用して MySQL ストアド プロシージャのエラー処理について説明します。ご参考...

JQuery を放棄すべきでしょうか?

目次序文jQuery 以外の場合は何を使うのでしょうか? DOMとイベントAJAX リクエスト要約す...

CentOS 8.4 に Docker をインストールする詳細なチュートリアル

目次序文:システム要件:インストール環境:古いバージョンをアンインストールします: yum は具体的...

CenterOS7 インストールおよび構成環境 jdk1.8 チュートリアル

1. まずcenterosに付属のJDKをアンインストールします rpm-qa|grepopenjd...

Vite+ElectronでVUE3デスクトップアプリケーションを素早く構築

目次1. はじめに2. Viteプロジェクトを作成する1. viteをインストールする2. プロジェ...

MySQL-8.0.26 構成グラフィックチュートリアル

はじめに: 最近、会社のプロジェクトでデータベースのバージョンが変更されました。ここでは、MySQL...