仅发出活动路径的方法

时间:2019-07-16 13:07:51

标签: vue.js vuex

我在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页中的方法也适用。 有什么方法可以只发出激活哪个页面的方法。

对不起,如果很难得到所要的信息,谢谢您的帮助!

0 个答案:

没有答案