Low-level Vue pagination component
This is a low-level, ui-agnostic pagination component.
You pass it an array of data, the current page index and the desired amount of results per page.
It then exposes a scoped slot through which you can access the following:
Recommended usage: wrap this in a high-level styled component.
npm install --save vue-lpage
<script src="https://unpkg.com/vue-lpage@latest"></script>
<!-- This will render [ "a", "b" ] --> <template> <vue-lpage :data="['a', 'b', 'c']" :page="1" :results-per-page="2"> <div slot-scope="{ subset }"> {{ subset }} </div> </vue-lpage> </template> <script> import VueLpage from "vue-lpage"; export default { components: { VueLpage } }; </script>
<template> <vue-lpage :data="data" :page="page" :results-per-page="resultsPerPage"> <div slot-scope="{ subset, totalPages, isFirstPage, isLastPage }"> <div> Page <input type="number" v-model="page" :min="1" :max="totalPages" /> out of {{ totalPages }} </div> <div> Show <input type="number" v-model="resultsPerPage" :min="1" :max="data.length" /> results per page </div> <button :disabled="isFirstPage" @click="page--"> Previous </button> <button :disabled="isLastPage" @click="page++"> Next </button> <ul> <li v-for="quote in subset" :key="quote">{{ quote }}</li> </ul> </div> </vue-lpage> </template>
Pagination is one-based (page 1 is the first page).
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4