Vue3 親子コンポーネントパラメータ転送における sync 修飾子の使用法の詳細な説明

Vue3 親子コンポーネントパラメータ転送における sync 修飾子の使用法の詳細な説明

一方向データフローの説明

一方向のデータフロー(ヒープは変更できますが、スタックは変更できません)

親から子に渡されるデータは一方向のデータフローであることは誰もが知っています。つまり、子コンポーネントは親コンポーネントから渡された値を直接変更することはできません。

しかし実際には、値を変更する場合、真実は次のようになります。基本データ型は変更できませんが、複合データ型は参照アドレス(スタック)を変更せず、その値は自由に変更できます。

Vue2.x の使用法

親コンポーネントに変更を通知するイベントのフォームを定義します

これが最も基本的な使い方です: props+$emit

書き方:

ここに画像の説明を挿入

.sync と update の使用:

親コンポーネントが値を渡すときは、変数の後に.syncを追加するだけです。

子コンポーネントthis.$emit("update:變量", 實參)親コンポーネントから渡された値を変更できます。

書き方:

[外部リンク画像の転送に失敗しました。ソースサイトにはアンチホットリンクメカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-BZtIWKTt-1631881175196) (インタビューの質問が整理されました。assets/image-20210917190128935.jpg)]

親から子へ、複数のデータを渡すための省略形

子コンポーネントに渡される値が複数のデータである場合、 v-bindを使用して 1 つのオブジェクトに複数のデータを直接含めることができます。

注: v-bind.sync="doc";

子コンポーネントに渡されるのは doc オブジェクトではありません。

しかし、オブジェクト内のすべての属性。

書き方:

[外部リンク画像の転送に失敗しました。ソースサイトにはアンチホットリンクメカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-3yidmVZ0-1631881175197) (インタビューの質問が整理されました。assets/image-20210917191523433.jpg)]

v-model の略語を使用する (厳格な要件)

親コンポーネント: v-model 、子コンポーネント: 受け取った変数はvalueでなければならず、$emit によって送信されたイベントはinputでなければなりません。

書き方:

[外部リンク画像の転送に失敗しました。ソースサイトにはアンチホットリンクメカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-GT15QqZz-1631881175199) (インタビューの質問が整理されました。assets/image-20210917201832481.jpg)]

Vue3.x の使用法

v-modelを使用すると、2.xと比較して、コンポーネントで複数のv-modelを使用できるようになりました。これは、Vue2.x修飾子の使用です。

一般的な使用法

親コンポーネントを渡すときはv-modelを使用し、子コンポーネントを変更するときはemit("uodate: num", 實參)を使用します。

書き方:

[外部リンク画像の転送に失敗しました。ソースサイトにはアンチホットリンクメカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-vQ1lQFal-1631881175199) (インタビューの質問が整理されました。assets/image-20210917193019726.jpg)]

略語

親コンポーネントから子コンポーネントに渡される変数の名前がmodelValueの場合、このメソッドを使用できます。

書き方:

[外部リンク画像の転送に失敗しました。ソースサイトにはアンチホットリンクメカニズムがある可能性があります。画像を保存して直接アップロードすることをお勧めします (img-4513r0bT-1631881175200) (インタビューの質問が整理されました。assets/image-20210917194125901.jpg)]

上記は、Vue3親子コンポーネントのパラメータ受け渡しにおけるsync修飾子の使用方法の詳細説明の詳細な内容です。Vue3親子コンポーネントのパラメータ受け渡しの詳細については、123WORDPRESS.COMの他の関連記事に注目してください。

以下もご興味があるかもしれません:
  • Vue の v-model ディレクティブと .sync 修飾子の違いの詳細な説明
  • Vueのsync修飾子の詳細な説明
  • VUE カスタム コンポーネントで .sync 修飾子と v-model を使用する違いの詳細な説明
  • vue.sync 修飾子の使用に関する詳細な説明
  • Vue の .sync 修飾子の例の詳細な説明
  • Vue の .sync 修飾子の使い方を理解する方法
  • Vue における .sync 修飾子の使用法と原理の分析

<<:  HiveメタデータをMySQLに設定するプロセス全体

>>:  Linux deb パッケージの解凍、変更、その他の操作方法のコード例

推薦する

Vue で echarts を使用してコンポーネントを視覚化する方法

echarts コンポーネントの公式ウェブサイト アドレス: https://echarts.apa...

携帯電話番号の歩数記録を取得するWeChatアプレット

序文最近、小さなプログラムを開発しているときに、このような問題に遭遇しました。ユーザーが認証をクリッ...

MySQL全文検索の使用例

目次1. 環境整備2. データの準備3. ショーを始める4. 単語分割エンジン要約する参考文献1. ...

LinuxシステムにおけるMySQLの一般的な操作コマンド

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

docker を使用してシンプルな C/C++ プログラムをデプロイする方法

1. まずhello-world.cppファイルを作成しますプログラムコードは次のとおりです。 #i...

Vue でフルスクリーンを実装し、フルスクリーン終了を監視する

目次序文:実装手順:完全なソースコード:詳細情報:序文: vueでは、デフォルトページを実装し、di...

Windows 10 で MySQL を完全にアンインストールして再インストールするための詳細な手順

さまざまな理由で、誰もが MySQL を再インストールする必要があると思います。 MySQL と Q...

Dockerコンテナの接続と通信の実装

ポート マッピングは、Docker を別のコンテナーに接続する唯一の方法ではありません。 Docke...

JS を使用して HTML で回転するクリスマスツリーを実装する

<!DOCTYPE ヘムル パブリック> <html> <ヘッド&g...

一般的なMySQLコマンドの概要

mysqlrootパスワードの設定と変更初めて MySQL データベースに入ります。 !環境変数にm...

MySQL のダウンロードとインストールの詳細グラフィックチュートリアル

1. MySQLデータベースをダウンロードするには、公式Webサイトにアクセスしてください:http...

MySQL でローカル ユーザーを作成し、データベース権限を付与する方法の例

序文MySQL をインストールすると、通常はスーパーユーザー root を作成します。多くの人がこの...

Linux で ffmpeg をインストールするための詳細なチュートリアル

1. CentOS Linuxにffmpegをインストールする1.ダウンロードして解凍する http...

Vueモバイル端末の適応化問題の詳細説明

1. vue uiでプロジェクトを作成する 2. 基本設定項目を選択する 3. プロジェクトを実行す...

HTML ページでコンテンツの選択、コピー、右クリックを防止する方法の詳細な説明

時には、Web ページに掲載されているコンテンツが悪意のある人物に盗用されるのを望まないため、Web...