[英]Vue.js eventBus doesn't emit property after page refresh
我想在頁面刷新后將屬性從一個組件傳遞給另一個組件,它們是兄弟姐妹。 我想在頁面加載時執行此操作。 我正在使用 eventBus 來做到這一點:
EventBus.$emit('generatedSum', this.sum);
在兄弟組件中接收它:
EventBus.$on('generatedSum', (sum) => {
this.correct = sum;
});
我將兩者都放在生命周期掛鈎中:
created(){}
問題是,在保存更改后編譯代碼后,我將屬性發送到同級組件,但是當我手動刷新頁面時,該屬性在同級組件中不可見。
我認為當頁面刷新時,Vue 組件會一個接一個地掛載。 由於兩者都是兄弟,當第一個組件trigger the event
時,第二個組件可能無法監聽triggered event
。 因為第二個組件是在第一個組件之后安裝的。
作為一種解決方法,請嘗試mounted()
而不是使用created()
生命周期事件。
可以在此處找到有關生命周期事件的更多信息。 https://v2.vuejs.org/v2/guide/instance.html#Lifecycle-Diagram
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.