evntbusを使用して2つのコンポーネント間でデータを渡します ボタンをクリックすると、送信された関数がこのように実行され、他のコンポーネントにオブジェクトの配列が送信されますvue jsでeventbusで送信されたオブジェクトのアクセス値
submitted(){
this.products.push(this.product);
EventBus.$emit('prod', this.products);
}
及び他のコンポーネントで:
created(){
EventBus.$on('prod', function (productObject) {
console.log('event received!', userObject);
this.produc = productObject.products
console.log('The product: ', this.produc)
}.bind(this));
console.log('User outside eventbus:', this.produc);
}
問題は、私はできない第二成分にeventbusとともに渡さオブジェクトにアクセスできないことです誰でも助けてくれますか? productobjectの 値は、あなたがいないコンポーネントに、EventBusにイベントを発するようには、EventBus.$emit('prod', this.products);
する必要があり、
はあなたがコンソールに 'productObject'を記録することができますか?それが 'products'プロパティを含んでいるのか、それとも配列ですか? – Tomer
https://i.stack.imgur.com/22hl7.png – mar
添付されたログから判断すると、productObjectは要素が1つの配列です。これは 'this.product'ではなく' this.products'を送出するためです。 – raina77ow