2017-05-04 13 views
0

ルータビューから外部コンポーネントにデータを渡そうとしています。私はan example of child to parentを見つけましたが、ルータビューが子を考慮しているかどうかはわかりません。
このメソッドを使用して、withingから外部コンポーネントにデータを渡すことはできますか?ルータビューから外部コンポーネントへのVuejs

私はTopNavSectionに値を渡すイベントを発行しているChildViewを持っています。

これは私が持っている構造である。

mounted() { 
    this.$emit('update-back-link', "value"); 
}, 

しかし、私の場合はMainContainer.vueにこのコードを介して処理されていません。

enter image description here

私はChildViewにイベントを送信しました。

<top-nav-section @update-back-link="handleBackLinkUpdate"></top-nav-section> 

methods: { 
    handleBackLinkUpdate: function (value) { 
    debugger; 
    console.log(value);   
    }, 
}, 

なぜハンドラがトリガされていないのかわからないので、私が正しい道にいるかどうかを教えてください。 thanks

答えて

2

ChildViewコンポーネントは、TopNavSectionコンポーネントではなくupdate-back-linkイベントを送出しています。しかし、​​タグにイベントハンドラがあります。 TopNavSectionは決してupdate-back-linkイベントを送出しないので、そのハンドラは決して起動されません。

あなたは(あなたがルート要素としてChildViewを使用しているので、することになります<router-view>)ChildViewコンポーネントのタグにイベントハンドラを移動する必要があります。

<router-view @update-back-link="handleBackLinkUpdate"></router-view> 
+0

感謝を。私はイベントを処理することができます。 – Alocus

関連する問題