みなさんこんにちは。今日はv-modelを使って親子コンポーネントのバインディング効果を実現する方法についてお話します。 1: シンプルバージョンのコードは次のとおりです。親コンポーネント: <テンプレート> <div> // 3: 子コンポーネントを使用し、v-model を使用して <About v-model="father"/> をバインドします。 </div> </テンプレート> <スクリプト> // 1: サブコンポーネントをインポートします。import About from "./About"; エクスポートデフォルト{ // 2: サブコンポーネントを登録する: { について、 }, データ() { 戻る { // 空の父親の値:'' } }, //コンポーネントデータの変更を監視する watch:{ 父(val){ コンソールログ(val); } } }; </スクリプト> サブコンポーネント: <テンプレート> <div> // 2: v-model を使用して <input type="text" v-model="son"> をバインドします。 </div> </テンプレート> <スクリプト> エクスポートデフォルト{ // 1: 親コンポーネントから情報プロパティを受け取る: { 価値:{ タイプ:文字列、 デフォルト:'' } }, データ() { 戻る { // 3: 空の値を代入する:'' } }, // 4: 変更をリッスンする watch:{ // 息子に値を割り当てる 価値(){ // ここで this.value は props の値です this.son = this.value }, // 親コンポーネントにsonを渡すson(){ this.$emit('input',this.son) } } } </スクリプト> 子コンポーネントが親コンポーネントに渡されるときに $emit の最初のパラメータが 'input' である理由については、興味のある方は v-model 実装の原則について学ぶことができます。 2: プロジェクト内での使用に移りましょう(子コンポーネントの画像アドレスを取得し、親コンポーネントに渡し、画像情報を同期的に更新します)基本的に同じ Ⅰ: 親コンポーネントに子コンポーネントを導入し、子コンポーネントタグでv-modelを使用して空の値を割り当てる Ⅱ: 次に、props を使用して子コンポーネントで受け取ります。 III: サブコンポーネントページでも v-model を使用し、データに空のイメージを割り当てます。 IV: サブコンポーネントの変更を監視するためにwatchを使用する 分解図のコード: value 関数は、渡された親コンポーネントを子コンポーネントに割り当てます。This.value は props の値です。 価値() { this.SonStaffPhoto = this.value console.log(this.SonStaffPhoto) } これはv-modelにバインドされた子コンポーネント関数であり、親コンポーネントに渡すために使用されます。 息子スタッフ写真() { this.$emit('input', this.SonStaffPhoto) }, この時点で、親コンポーネントに渡したいコンテンツを this.SonStaffPhoto に割り当てることができます(画像アドレスを格納する変数に割り当てました) V: 親コンポーネントの変更を監視することもできます。 親コンポーネントの This.staffPhoto にも、バインドするコンテンツを割り当てることができます (子コンポーネントの画像が更新され、親コンポーネントも同期的に更新されるように、最新の画像変数に割り当てました) 要約するこれで、Vue で v-model を使用したクロスコンポーネントバインディングの基本的な実装方法についての記事は終了です。Vue で v-model を使用したクロスコンポーネントバインディングに関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: mysqlは昨日の日付、今日の日付、明日の日付、前の時間と次の時間の時刻を取得します
>>: Linux 上の MySQL 5.7 でパスワードを忘れる問題を解決する
ここでは、Linux プラットフォームでの Zabbix エージェントのインストールと構成について簡...
React Native は、プルアップとプルダウンの監視ジェスチャを実装します。詳細なコアコードは...
目次1. フロントエンドのリーディングプロセス: 2. プラグインの使用と初期化2.1 vue-ad...
私たちのベテランの先人たちは、数え切れないほどのコードを書き、数え切れないほどの落とし穴に陥ってきま...
<br />緑は黄色と青(寒色と暖色)の中間の色で、より穏やかな色です。そのため、緑は最...
プロジェクトでよくある状況として、案件リストなどのリストが存在することがあります。リスト内の項目をク...
目次プロジェクトにおける一般的な支払い方法Alipay決済微信ペイプロジェクトにおける一般的な支払い...
以下のインストールではすべて、インストール ルート ディレクトリとして ~/ ディレクトリが使用され...
目次序文1.v-ショー2.v-if 3. v-showとv-ifの違い1. 原則の違い2. アプリケ...
目次1. 分離レベルコミットされていない読み取りREAD COMMITED (コミット読み取り/非反...
MySQL トランザクション サポートは、MySQL サーバー自体にバインドされているのではなく、ス...
最新の Windows 10 アップデートをインストールした後、システム UI の詳細な効果が顕著に...
//文法: @media mediatype and | not | only (メディア機能) ...
序文多くの場合、仮想マシンを使用します。たとえば、一部のテストは検出されません。何かを壊すことを心配...
1. インストールターミネーターの最大の特徴は、1つのウィンドウで複数のターミナルを開くことができる...