国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - vue渲染子組件異步問題

瀏覽:126日期:2023-01-07 15:56:33

問題描述

現(xiàn)在有一個組件A。里面包含了組件B,C,D,由于涉及了數(shù)據(jù)共享,組件B需要用x參數(shù)發(fā)請求,但是x參數(shù)是在A里面發(fā)請求獲取到的,現(xiàn)在出現(xiàn)的問題是在A還沒獲取到參數(shù)x的時候B就已經(jīng)先一步發(fā)請求了(結(jié)果請求400錯誤),出現(xiàn)問題的根本問題是父組件與子組件的渲染都是異步進(jìn)行的,在父組件獲取參數(shù)時用了async+await。

async beforeMount(){ let x = await this.getCityInfo(); this.GET_POSITION(x); console.log(11);},

現(xiàn)在目前能想到的方案就將B,C,D全部整合到A內(nèi)部,使A內(nèi)部沒有子組件,這樣就不會有組件之間異步渲染的問題,請問還有其他更好的方案嗎?

問題解答

回答1:

獲取 x 成功之前不渲染 B

<B v-if='x'></B>

或者 B 自己 watch prop x ,值不對不發(fā)請求。

watch: { x (value) { if (value) { // send request } }}回答2:

A請求完了emit一個事件 B去監(jiān)聽就是了

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 马边| 舟山市| 泾阳县| 小金县| 桐柏县| 吴川市| 东辽县| 平原县| 象山县| 资阳市| 江西省| 玛曲县| 青川县| 兴业县| 怀集县| 安远县| 台北县| 大连市| 彭州市| 禄丰县| 通州区| 南投市| 永泰县| 平遥县| 新密市| 龙门县| 浮梁县| 绩溪县| 青河县| 临西县| 方山县| 黑水县| 六枝特区| 巨野县| 江阴市| 布尔津县| 和田市| 山东省| 越西县| 灵台县| 商水县|