當父元件傳給子元件的資料是在父元件中非同步獲取的時候,如何讓子元件獲取期望的值?
在父元件中:
首先在data()中定義data_detail為空:
data()}
然後將data_detail傳遞給子元件
data_item是在父元件中非同步請求的資料:
searchdatadetail()param.data_id = self.search_history[0].data_id
param.data_type = self.search_history[0].data_type
param.search_name = self.search_history[0].search_name
self.api.searchdatadetail(param).then(
function
(res)
else
})},
在子元件中:
通過props接收父元件傳遞過來的值:
props: ['data_item']
當父元件的非同步請求為loading狀態的時候,data_item的值為空,此時子元件獲取的也是空值,有時候需要用到data_item傳遞過來的值作為引數,這時就會獲取不到data_item.enterprise_name這個引數
mounted()
checkdataexist()axios.post('/data/checkdataexists', param).then((res) =>
else
})
}
1.在父元件中加上v-if屬性:
if='data_detail.enterprsie_name' :data_item='data_detail'>
2.在子元件中用watch監聽資料變化後再呼叫函式
watch: )}},
如果上面兩種方式都不能解決問題的話,那就用vuex來管理。
vue子元件向父元件傳遞資料
vue專案中經常使用到元件之間的數值傳遞,實現的方法很多,但是原理基本上大同小異。子元件向父元件出傳遞資料,使用自定義事件的方式。父元件向子元件傳遞資料,使用props屬性的方式。推薦文章 vue筆記 父元件向子元件傳遞資料 我們可以從子元件中想父元件中傳遞多個資料,在子元件中要做的工作只是,使用t...
Vue父元件獲取子元件資料
方法 一 從父元件呼叫子元件方法獲取資料 1 子元件addindex.vue寫乙個方法,返回要用的資料 methods 2 在父組aindex.vue件中獲取值 import procedureedit from pages procedure add addindex methods 方法 二 子...
vue元件通訊 子元件傳遞資料給父元件
上次已經介紹了父元件如何傳遞資料給子元件,那麼,子元件又是如何將資料傳遞給父元件的呢?vue中,子元件用 emit 來觸發事件,父元件用 on 來監聽子元件,也可通過直接在子元件的自定義標籤上使用v on來監聽子元件觸發的自定義事件。下面通過乙個例子來講解 每次加2後的總數 這裡只講解加1的操作,在...