Использование нескольких экземпляров нумерации страниц с Vue.js - PullRequest
0 голосов
/ 25 мая 2018

Я хотел бы использовать несколько экземпляров плагина Vue.js Pagination внутри цикла.

Например,

for (let i in sources) {
    // create a new tab with its own pagination
}

Проблема, с которой я сталкиваюсь, заключается в том, что метод @page-changed="pageChanged" отправляет только новый номер страницы, поэтому я не знаю, какое хранилище вкладок обновить.Если я пытаюсь отправить имя магазина в функцию pageChanged, он перезаписывает новый номер страницы, поэтому я все еще не могу обновить магазин.

Есть ли способ определить, какое хранилище вызывает pageChanged?

1 Ответ

0 голосов
/ 25 мая 2018

использует @page-changed="pageChanged($event, i)".

$event - это значение страницы №, полученное из плагина разбиения на страницы.

i - это индекс из for (let i in sources).

Затем в функции = pageChanged вы узнаете, какая вкладка (= sources [i]) получила событие @ page-change.

Псевдокод будет:

или вы можете передать объект tab в pageChanged как @page-changed="pageChanged($event, tab)"

<template>
  <div>
    <div v-for="(tab, tabIndex) in sources" :key="index">
      <v-tab :data="tab">
        <v-pagination @page-changed="pageChanged($event, tabIndex)"></v-pagination>
      </v-tab>
    </div>
  </div>
</template>

<script>
export default {
  data () {
  return {
    sources: ['tab1', 'tab2']
  },
  methods: {
    pageChanged: function (data, tabIndex) {
      // update something for this.sources[tabIndex]
    }
  }
}
}
</script>
...