我在2页上连接了页脚。页脚中使用的变量在Vuex的存储中定义。页脚发出的方法使两个页面上的方法均处于活动状态。有什么方法可以阻止其他页面的工作。
Footer.vue
template:
<div class="text-center">
<button :class="classFirst" @click="prevPage" :disabled="pageNumber==1" aria-hidden="true"></button>
<span class="text-white pl-2 pr-2">Page {{pageNumber}} of {{pageCount}}</span>
<span class="text-white">|</span>
<button :class="classLast" @click="nextPage"
:disabled="pageNumber >= pageCount - 1" aria-hidden="true"></button>
</div>
......
computed: {
pageCount(){
return store.state.orderPageCount
},
pageNumber(){
return store.state.orderPageNumber
}
},
......
methods: {
prevPage(){
let page = this.pageNumber-1;
bus.$emit("fetchOrders", {page});
},
nextPage(){
let page = this.pageNumber+1;
bus.$emit("fetchOrders", {page});
}
}
Page1.vue
methods: {
fetchOrders(page) {
let url = domain + "order";
if (!page) {
page = 1;
}
this.disable = true;
axios
.get(url,{
params: {
status:5
}
})
.then(res => {
let ordersList = [];
res.data.data.forEach(doc => {
store.dispatch("patchorderPageCount", res.data.last_page);
store.dispatch("patchorderPageNumber", res.data.current_page);
});
});
}
}
Page2.vue
methods: {
fetchOrders(page) {
let url = domain + "order";
if (!page) {
page = 1;
}
this.disable = true;
axios
.get(url,{
params: {
status:4
}
})
.then(res => {
let ordersList = [];
res.data.data.forEach(doc => {
store.dispatch("patchorderPageCount", res.data.last_page);
store.dispatch("patchorderPageNumber", res.data.current_page);
});
});
}
}
在第2页中使用页脚时,第1页中的方法也适用。 有什么方法可以只发出激活哪个页面的方法。
对不起,如果很难得到所要的信息,谢谢您的帮助!