ホームページ >ウェブフロントエンド >jsチュートリアル >vue親コンポーネントを操作して子コンポーネントを呼び出す方法
今回はvueの親コンポーネントを操作して子コンポーネントを呼び出す方法を紹介します。 vueの親コンポーネントを使って子コンポーネントを呼び出す際の注意点は何ですか? 以下は実際のケースですので見てみましょう。
シナリオ:
親コンポーネントは配列の子を渡します コンポーネントはループしてさまざまなコンポーネント モジュールを作成し、すべてのイベント は子コンポーネント内にあります
親コンポーネントの上部には画像のアップロード ボタンもあります。画像をアップロードすると、最初のモジュールに画像が表示されます:アイデア: 親コンポーネントのボタンをクリックして、子コンポーネントのアップロード メソッドをトリガーします: 呼び出す子コンポーネントで
を定義します。子コンポーネントのメソッドref="refName",
父组件的方法中用this.$refs.refName.method
fileClick(index) { console.log('子组件的fileClick被调用了') console.log('index: '+index) // this.aaa(); if(!this.fileInfor[index].imgUrl){ //如果当前框里没有图片,则实现上传 document.getElementsByClassName('upload_file')[index].click(); } },親コンポーネントのテンプレート
<template> <x-button type="submit" class="custom-primary" @click.native="xiechengUpload">上传图片</x-button> <up-load :fileInformation="fileInformation" ref="uploadRef"></up-load> </template>親コンポーネント メソッドでメソッドを定義し、対応するインデックス値を渡します。
Upload(){ // console.log('父组件的xiechengUpload被调用了') this.$refs.uploadRef.fileClick(0); },このとき、アップロード ボタンを使用して、サブコンポーネントの最初のモジュールに画像を挿入します。
サブコンポーネントのイベントを呼び出す Vue 親コンポーネントを見てみましょう
Vue 親コンポーネントは、子コンポーネントにイベントを渡したり、イベントを呼び出したりしますデータ (props) の受け渡しについてではなく、Vue 2.0 に適用できます方法 1: 子コンポーネントは親コンポーネントによって送信されたメソッドをリッスンします方法 2: 親コンポーネントがサブコンポーネントのメソッドを呼び出すサブコンポーネント:export default { mounted: function () { this.$nextTick(function () { this.$on('childMethod', function () { console.log('监听成功') }) }) }, methods { callMethod () { console.log('调用成功') } } }Parentコンポーネント:
<child ref="child" @click="click"></child> export default { methods: { click () { this.$refs.child.$emit('childMethod') // 方法1 this.$refs.child.callMethod() // 方法2 }, components: { child: child } }この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、PHP 中国語 Web サイトの他の関連記事に注目してください。 推奨書籍:
JavaScript EventEmitter の基礎となるロジック分析
以上がvue親コンポーネントを操作して子コンポーネントを呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。