1.vuex可不可以用來存儲數(shù)據(jù)還是本身就是用來存儲數(shù)據(jù)的。例如 A、B2個頁面,A頁面進(jìn)行ajax請求,拿到的數(shù)據(jù)需要在B頁面上展示出來。我個人的做法就是將拿到的ajax數(shù)據(jù)存儲到state中,然后B頁面再去調(diào)用state中的數(shù)據(jù)。已經(jīng)試驗過這種方法可行,但是不知道是否合理,或者說vuex本身就是用來做這個的。2.如何監(jiān)聽vuex中數(shù)據(jù)的變化。A頁面的按鈕控制B頁面上div的顯示,最簡單的方法就是頁面A的按鈕添加@click事件,click事件提交Mutations。修改state中的某個變量為false,頁面B監(jiān)聽這個變量,如果變量改變,就將div隱藏。頁面B
export default{ data(){
ishow=true
},
computed:{
...MapState(['x'])
},
watch:{
x(){ this.ishow=this.x //或者這個樣子
this.ishow=!this.ishow
}我現(xiàn)在的實現(xiàn)還是通過監(jiān)聽引入的變量是否發(fā)生改變,如果改變就對ishow進(jìn)行改變,從而控制div的顯示隱藏。但是如果有10個頁面乃至跟更多的頁面或者組件需要監(jiān)聽x的改變。哪我每個頁面或組件都需要寫監(jiān)聽。有沒有其他方法可以實現(xiàn)state改變就能修改頁面或組件div的狀態(tài)。
添加回答
舉報
0/150
提交
取消