この記事では主に、親コンポーネントと子コンポーネント間の通信、親コンポーネントと子コンポーネント以外のコンポーネント間の EventBus 通信、ローカル キャッシュを使用したコンポーネント通信、および Vuex 通信の 4 つの Vue コンポーネント通信方法について説明します。皆さんのお役に立てれば幸いです。
最初の通信方法: 親子コンポーネント通信
親コンポーネントは合計4つのことを行う必要があります
1.import Son from ' ./son.js' サブコンポーネントの Son を導入します
2. すべてのサブコンポーネント名をコンポーネントに登録します: {"son"}
3. 親コンポーネントのテンプレートにサブコンポーネントを適用します。 ,
4. サブコンポーネントにデータを渡す必要がある場合は、
// 1.引入子组件 import counter from './counter' import son from './son'
// 2.在ccmponents里注册子组件 components : { counter, son },
サブコンポーネントが実行する必要があるのは 1 つだけです
1. props を使用してデータを受け取り、データを直接使用できます
2。変更されました。変更する必要がある場合は、計算属性を使用するか、サブモジュール DATA
// 3.在template里使用子组件 <son></son>
// 4.如果需要传递数据,也是在templete里写 <counter :num="number"></counter>
サブコンポーネントのイベントトリガーをリッスンする関数をメソッドに記述します
// 1.用Props接受数据 props: [ 'num' ],
ただし、これらは親子コンポーネントではないため、それらを接続するための中間コンポーネントが必要です。
2. 、 this.$root.Bus .$emit はイベント
をトリガーします。 3. コンポーネント 2 では、 this.$root.Bus.$on がイベント
// 2.如果需要修改得到的数据,可以这样写 props: [ 'num' ], data () { return { number : this.num } },
// 1. 在templete里应用子组件时,定义事件changeNumber <counter :num="number" @changeNumber="changeNumber" > </counter>
3 番目の通信方法: localStorage またはsessionStorage
window.localStorage.getItem(key) を通じてデータを取得します
window.localStorage.setItem(key, value) を通じてデータを保存します関連する推奨事項:
Vueコンポーネント開発経験の共有
以上が4 つの Vue コンポーネント通信方法の例を共有するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。