多個(gè)頁面組件(.vue文件)由團(tuán)隊(duì)中不同的開發(fā)者寫的,這些頁面中都會(huì)用到一組行政區(qū)劃數(shù)據(jù),這個(gè)數(shù)據(jù)需要用Axios調(diào)用后臺接口取得,這個(gè)數(shù)據(jù)對于同一個(gè)用戶是不變的,多個(gè)頁面組件使用的應(yīng)是同一份數(shù)據(jù)。這些頁面組件訪問順序不固定。那么,我的問題是,哪個(gè)頁面來負(fù)責(zé)調(diào)用axios取值,并放到store中呢?每個(gè)頁面都要調(diào)用的話,同一份數(shù)據(jù)會(huì)取多次肯定是不合理的,那是否每個(gè)頁面都要先判斷這個(gè)值是否存在,不存在則調(diào)用actions取值并放入store中,并watch這個(gè)值變化后,再getter這個(gè)值呢?感覺這個(gè)判斷邏輯很麻煩,而且還要求所有頁面都要這樣寫,在代碼風(fēng)格協(xié)調(diào)上也要花時(shí)間,能否把這些判斷邏輯封裝,頁面直接調(diào)用呢?請問實(shí)踐上大家是怎么用的?以往后端用緩存的經(jīng)驗(yàn)是,提供一個(gè)工具類和方法供調(diào)用,這個(gè)方法中封裝了取數(shù)據(jù)的代碼,先判斷緩存中是否存在,存在則返回,不存在則從數(shù)據(jù)庫獲取后放入緩存,再返回,調(diào)用方只需要調(diào)這個(gè)方法就行了,但這不是異步的實(shí)現(xiàn),不知vuex能否這樣用呢?
1 回答

青春有我
TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超8個(gè)贊
同一個(gè)入口的話,就放最外邊的組件App.vue
里唄。
還是得看你們的數(shù)據(jù)自己拿捏。沒有固定的獲取地方,只有選擇最合適的。
1、比如你的行政區(qū)劃數(shù)據(jù),這類靜態(tài)數(shù)據(jù),直接存 localStorage 就沒問題。
2、像獲取用戶信息數(shù)據(jù),適合放根組件獲取,因?yàn)楹芏嗟胤娇赡苡玫健?br/>3、又比如若干組件共享一組數(shù)據(jù),就可以把這些組件統(tǒng)一起來放在某一父組件下,然后只要在父組件獲取數(shù)據(jù)就可以了。
添加回答
舉報(bào)
0/150
提交
取消