A Vue.js pagination component for Laravel paginators that works with Bootstrap

Last update: Aug 17, 2022

Build Status npm Downloads

Want your logo here? Sponsor me on GitHub

Laravel Vue Pagination

A Vue.js pagination component for Laravel paginators that works with Bootstrap.

Requirements

Install

npm install laravel-vue-pagination
// or
yarn add laravel-vue-pagination

Demo

See https://laravel-vue-pagination.now.sh

Usage

Register the component:

Vue.component('pagination', require('laravel-vue-pagination'));

Use the component:

<ul>
    <li v-for="post in laravelData.data" :key="post.id">{{ post.title }}</li>
</ul>

<pagination :data="laravelData" @pagination-change-page="getResults"></pagination>
export default {

	data() {
		return {
			// Our data object that holds the Laravel paginator data
			laravelData: {},
		}
	},

	mounted() {
		// Fetch initial results
		this.getResults();
	},

	methods: {
		// Our method to GET results from a Laravel endpoint
		getResults(page = 1) {
			axios.get('example/results?page=' + page)
				.then(response => {
					this.laravelData = response.data;
				});
		}
	}

}

Customizing Prev/Next Buttons

Prev/Next buttons can be customized using the prev-nav and next-nav slots:

<pagination :data="laravelData">
	<span slot="prev-nav">&lt; Previous</span>
	<span slot="next-nav">Next &gt;</span>
</pagination>

API

Props

Name Type Description
data Object An object containing the structure of a Laravel paginator response or a Laravel API Resource response.
limit Number (optional) Limit of pages to be rendered. 0 shows all pages (default). -1 will hide numeric pages and leave only arrow navigation. Any positive integer (e.g. 2) will define how many pages should be shown on either side of the current page when only a range of pages are shown.
show-disabled Boolean (optional) Show disabled prev/next buttons instead of hiding them. false hides disabled buttons (default). true shows disables buttons.
size String (optional) One of small, default or large
align String (optional) One of left (default), center or right

Events

Name Description
pagination-change-page Triggered when a user changes page. Passes the new page index as a parameter.

Development

To work on the library locally, run the following command:

npm run serve

To run the tests:

npm run test

Show your Support

To show your support for my work on this project:

Credits

Laravel Vue Pagination was created by Gilbert Pellegrom from Dev7studios. Released under the MIT license.

GitHub

https://github.com/gilbitron/laravel-vue-pagination
Comments
  • 1. Invalid prop: type check failed for prop "data". Expected Object, got Array.

    When passing a Laravel paginator response to the data prop of this component I receive the following error:

    Invalid prop: type check failed for prop "data". Expected Object, got Array.
    

    The problem is, the data passed to the data prop is, in fact, an object and is indicated as so in Vue DevTools.

    Screenshot

    As you can see from the screenshot above, it is indeed an object, as expected by the component and indicated in the docs.

    I'm using Vue 2.

    Unless the type check is on the data property of the paginator response, then something is going wrong here.

    That said, in the docs, it gives an example of the type of response required, and the data property of the paginator response is an array:

    {
        current_page: 1,
        data: [],
        from: 1,
        last_page: 1,
        next_page_url: null,
        per_page: 10,
        prev_page_url: null,
        to: 1,
        total: 0,
    }
    
    Reviewed by dainemedia at 2018-03-14 11:28
  • 2. TypeError: Cannot create property 'default' on boolean 'true'

    Hi, I am getting this error. Am I doing something wrong? Thanks.

    [Vue warn]: Error in render: "TypeError: Cannot create property 'default' on boolean 'true'"
    
    found in
    
    ---> <Pagination>
           <User> at resources/js/components/User.vue
             <Root>
    
    TypeError: Cannot create property 'default' on boolean 'true'
        at Proxy.resolveScopedSlots (app.js:69748)
        at Proxy.render (app.js:18948)
        at VueComponent.Vue._render (app.js:70386)
        at VueComponent.updateComponent (app.js:70886)
        at Watcher.get (app.js:71284)
        at Watcher.run (app.js:71359)
        at flushSchedulerQueue (app.js:71117)
        at Array.<anonymous> (app.js:68845)
        at flushCallbacks (app.js:68771)
    

    Screen Shots:

    1

    2

    Reviewed by bskscmn at 2019-03-04 13:05
  • 3. How to use this package in Vue 3 ?

    Hi, I am trying to use this pagination package for Vue 3 and Laravel 7 but I got an error

    http://prntscr.com/10xwf27

    main.js

    let app = createApp(App);
    app.component('pagination', require('laravel-vue-pagination'));
    app.mount("#app");
    

    Is it support Vue 3 ???

    Reviewed by joneyspark at 2021-03-28 08:19
  • 4. Pagination component not showing up in DOM.

    Hi,

    I have been stuck on this issue for 2 days now. Everything is returning OK from laravel side, component is loading up data from Vue side and getting mounted without any errors. But not rendering in DOM. Please refer the screen shots.

    Screenshot 1 vuess

    Screenshot 2 dom

    Please help me if I'm doing something wrong or any prop I am missed to initiate?

    Regards, Jassi

    Reviewed by jaswindersinghnarula at 2019-01-10 07:56
  • 5. Pagination is not showing with Laravel 5.8

    I have implemented your package with vue 2.5.17 and laravel 5.8. Now error is showing in console and everything works fine. But pagination is not showing. I think it is not supporting laravel 5.8

    Pakwaan Admin

    Capture

    Reviewed by zooni7054 at 2019-04-13 18:29
  • 6. can't get it to work

    Hi, I just installed this and I think I did everything in documentation but somehow it won't work,

    controller

    $projects = Project::orderby('id', 'desc')->paginate(10);
    

    vue template

    <pagination :data="projects" @pagination-change-page="load"></pagination>
    

    component script

    import pagination from 'laravel-vue-pagination';  //added here
        export default {
            data() {
                return {
                    projects: []
                }
            },
            mounted: function() {
                if (this.projects.length) {
                    return;
                }
                this.load()
            },
            methods: {
                load: function(page) { //added here
                    if (typeof page === 'undefined') {
                        page = 1 //added here
                    }
                    axios.get('/api/projects?page=' + page) //added here
                    .then(
                        response => {
                            this.projects =  (response.data);
                        }     
                    )
                    .catch(function (error) {
                        this.errors.push(error);
                        console.log(error);
                    })
                }
            }
        }
    

    Question

    Did I do something wrong? How to fix this?

    Reviewed by robertnicjoo at 2018-08-11 16:58
  • 7. 43 Warning while importing the package

    the result of npm watch

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 206:35-53 export 'createElementVNode' (imported as 'createElementVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 207:35-53 export 'createElementVNode' (imported as 'createElementVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 213:35-53 export 'createElementVNode' (imported as 'createElementVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 214:35-53 export 'createElementVNode' (imported as 'createElementVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 216:52-68 export 'resolveComponent' (imported as 'resolveComponent') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 217:9-18 export 'openBlock' (imported as 'openBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 217:22-33 export 'createBlock' (imported as 'createBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 225:13-20 export 'withCtx' (imported as 'withCtx') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 226:63-72 export 'openBlock' (imported as 'openBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 226:76-94 export 'createElementBlock' (imported as 'createElementBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 226:101-111 export 'mergeProps' (imported as 'mergeProps') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 234:68-77 export 'openBlock' (imported as 'openBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 234:81-99 export 'createElementBlock' (imported as 'createElementBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 236:17-31 export 'normalizeClass' (imported as 'normalizeClass') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 238:10-28 export 'createElementVNode' (imported as 'createElementVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 238:34-44 export 'mergeProps' (imported as 'mergeProps') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 243:13-23 export 'toHandlers' (imported as 'toHandlers') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 244:12-22 export 'renderSlot' (imported as 'renderSlot') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 249:17-35 export 'createCommentVNode' (imported as 'createCommentVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 250:9-18 export 'openBlock' (imported as 'openBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 250:26-44 export 'createElementBlock' (imported as 'createElementBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 250:45-53 export 'Fragment' (imported as 'Fragment') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 250:61-71 export 'renderList' (imported as 'renderList') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 251:17-26 export 'openBlock' (imported as 'openBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 251:30-48 export 'createElementBlock' (imported as 'createElementBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 252:19-33 export 'normalizeClass' (imported as 'normalizeClass') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 255:12-30 export 'createElementVNode' (imported as 'createElementVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 255:36-46 export 'mergeProps' (imported as 'mergeProps') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 258:15-25 export 'toHandlers' (imported as 'toHandlers') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 259:14-29 export 'createTextVNode' (imported as 'createTextVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 259:30-45 export 'toDisplayString' (imported as 'toDisplayString') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 260:56-65 export 'openBlock' (imported as 'openBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 260:69-87 export 'createElementBlock' (imported as 'createElementBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 260:124-142 export 'createCommentVNode' (imported as 'createCommentVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 264:68-77 export 'openBlock' (imported as 'openBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 264:81-99 export 'createElementBlock' (imported as 'createElementBlock') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 266:17-31 export 'normalizeClass' (imported as 'normalizeClass') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 268:10-28 export 'createElementVNode' (imported as 'createElementVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 268:34-44 export 'mergeProps' (imported as 'mergeProps') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 273:13-23 export 'toHandlers' (imported as 'toHandlers') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 274:12-22 export 'renderSlot' (imported as 'renderSlot') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 279:17-35 export 'createCommentVNode' (imported as 'createCommentVNode') was not found in 'vue' (possible exports: default)

    WARNING in ./node_modules/laravel-vue-pagination/dist/laravel-vue-pagination.es.js 280:16-34 export 'createCommentVNode' (imported as 'createCommentVNode') was not found in 'vue' (possible exports: default)

    webpack compiled with 43 warnings

    Reviewed by ziyadadel at 2022-03-08 23:22
  • 8. Pagination links not working

    I'm having trouble with paging not working.

    Laravel Framework 5.8.38 [email protected] └─┬ [email protected] The paging itself is displayed.

    controller

      public function index()
        {
            return TelephoneNumbers::paginate(50);
            
        }
    

    routing Route::middleware('api')->get('/tele', '[email protected]'); vue

    <template>
        <div class="container">
            <div class="row justify-content-center">
                <div class="col-md-8">
                    <div class="card">
                        <div class="card-header">Laravel vue pagination - codechief.org</div>
     
                        <div class="card-body">
                            <ul>
                                <li v-for="tag in laravelData.data" :key="tag.id">{{ tag.subscriber_number }}</li>
                            </ul>
                            <pagination :limit=10 :data="laravelData" @pagination-change-page="getResults"></pagination>
     
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </template>
     
    <script>
      export default {
    
    	data() {
    		return {
    			// Our data object that holds the Laravel paginator data
    			laravelData: {},
    		}
    	},
    
    	mounted() {
    		// Fetch initial results
    		this.getResults();
    	},
    
    	methods: {
    		// Our method to GET results from a Laravel endpoint
    		getResults(page = 1) {
    			axios.get('https://domain/api/tele?page=' + page)
    				.then(response => {
    					this.laravelData = response.data;
    				});
    		}
    	}
    
    }
    </script>
    
    
    Reviewed by leben-jp at 2020-12-20 22:11
  • 9. Pagination links not working.

    I'm using laravel paginate

    $data = DB::table('posts')->paginate(30);

    and passing to the laravel component as a json object.

    <pagination :data="data"> </pagination>

    The pagination displays correctly even when I change manually the $_GET['page'] parameter on the URL but the links are not displaying.

    screen shot 2018-12-16 at 13 25 01

    Reviewed by pedroporto at 2018-12-16 13:27
  • 10. v3 Beta (Vue 3)

    I've just released a v3 beta of this plugin which is a re-write for Vue 3. Please see the latest releases and install using [email protected]. The code and REAMDE are available in the v3 branch.

    I'd appreciate it if you could help test the beta and share any feedback you have in this issue.

    Reviewed by gilbitron at 2022-02-10 12:50
  • 11. How to configure for Nuxt js?

    1. installed via npm i laravel-vue-pagination

    2. created a file under plugins folder as "laravel-vue-pagination.js"

    import Vue from 'vue'
    import LaravelVuePagination from 'laravel-vue-pagination'
    
    Vue.use('laravel-vue-pagination', LaravelVuePagination)
    
    1. registered in nuxt.config.js under plugins array '~/plugins/laravel-vue-pagination'

    2. using in page as follows <LaravelVuePagination :data="users" @pagination-change-page="getResults"></LaravelVuePagination>

    3. Getting error Cannot create property 'nuxt_external_installed' on string 'laravel-vue-pagination'

    Reviewed by zarpio at 2021-06-29 12:05
  • 12. Fix pagination attribute Meta undefined in Laravel 8^

    The main error is:

    laravel-vue-pagination.es.js?1467:35 
    Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'meta')
        at Proxy.isApiResource (laravel-vue-pagination.es.js?1467:35:1)
    

    In Laravel 8 ^ and Vue3 the tag/parameter meta was removed, so in this case, I only check if exist the element, but you can check first if in the different versions work this check of this.data.meta.

    Reviewed by supermavster at 2022-05-08 23:11
  • 13. Bump minimist from 1.2.5 to 1.2.6

    Bumps minimist from 1.2.5 to 1.2.6.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    Reviewed by dependabot[bot] at 2022-04-10 03:18
A advanced, smart, highly customizable Vue pagination component for Laravel Pagination

Advanced-Laravel-Vue-Paginate A advanced, smart, highly customizable vue pagination component for Laravel Pagination Demo & Playground See https://shi

Dec 9, 2021
Best and complete pagination plugin for Vue.js. Inspired in Angular Bootstrap Pagination.

vuejs-uib-pagination Best and complete pagination plugin for Vue.js 2.0. Inspired in Angular Bootstrap Pagination. Not Using Bootstrap? No problem! Th

Mar 23, 2022
Sliding Pagination for Vue - ARIA-friendly pagination component with a sliding window
 Sliding Pagination for Vue - ARIA-friendly pagination component with a sliding window

Sliding Pagination for Vue - ARIA-friendly pagination component with a sliding window

Nov 21, 2021
A Vue.js 2 component for simple pagination with Bootstrap layout
A Vue.js 2 component for simple pagination with Bootstrap layout

vue-bootstrap-paginator A Vue.js 2 component for simple pagination with Bootstrap layout. npm i --save vue-bootstrap-paginator Narrow template Full te

Jun 29, 2018
A lightweight and customizeable Bootstrap Pagination for Vue

v-pagy Server-side paging component in vue, template based on bootstrap Vue.js (tested with 2.x) Bootstrap CSS (tested with 4.x) Installation npm inst

Sep 10, 2020
Simple Pagination For Laravel when using Inertia js with vue3

Simple Pagination For Laravel when using Inertia js with vue3

Nov 17, 2021
data table simplify! -- vuetable is a Vue.js component that will automatically request (JSON) data from the server and display them nicely in html table with swappable/extensible pagination component.

Please Note! This is the previous version that works with Vue 1.x. The most up-to-date version is the Vuetable-2. If you like it, please star the Vuet

Jul 26, 2022
Vue.js 2 pagination component

Vue Pagination 2 Using Vue 3? Check out the new component Click here to see it in action. Simple, generic and non-intrusive pagination component for V

Jul 27, 2022
A Vue.js(v2.x+) component for creating pagination.
A Vue.js(v2.x+) component for creating pagination.

vuejs-paginate A Vue.js(v2.x+) component to make pagination. Inspired by react-paginate. Easy to use by providing simple api. And you can customize th

Aug 13, 2022
A Vue component for create a tiny pagination with Flexbox

Tiny Pagination · A Vue component for create a tiny paginate with Flexbox Install/Usage # Install with npm $ npm i -S vue-tiny-pagination # or yarn $

Mar 12, 2021
Vue pagination component

vue-ads-pagination Vue ads pagination is a vue js pagination component. On the left side you find some information about the shown items. On the right

Jul 19, 2022
Vue component for creating Pagination using Tailwind CSS.
Vue component for creating Pagination using Tailwind CSS.

Vue component for creating Pagination using Tailwind CSS.

Jul 31, 2022
Low-level Vue pagination component
Low-level Vue pagination component

vue-lpage Low-level Vue pagination component About This is a low-level, ui-agnostic pagination component. You pass it an array of data, the current pa

Feb 11, 2022
Pagination component for Vue.js 2

vue-plain-pagination A simple pagination component for Vue. Online demo: JSFiddle (used styles from Bootstrap 4) Dependencies Vue.js 2 - progressive J

May 31, 2022
Simple Vue Pagination component that can be used in any project with range & ui customization
Simple Vue Pagination component that can be used in any project with range & ui customization

Vue Tailwind Pagination Simple Vue Pagination component that can be used in any

May 16, 2022
A Vue.js (v3) component to make pagination, based on vuejs-paginate.
A Vue.js (v3) component to make pagination, based on vuejs-paginate.

vuejs-paginate-next A Vue.js (v3) component to make pagination, based on vuejs-paginate from lokyoung. Thank bverheec for his Vue.js v3 solution in is

Aug 7, 2022
Low-level Vue pagination component
Low-level Vue pagination component

vue-lpage Low-level Vue pagination component About This is a low-level, ui-agnostic pagination component. You pass it an array of data, the current pa

Feb 11, 2022
Simple unstyled Vue pagination component

Simple unstyled Vue pagination component

Feb 27, 2020
A custom Vue.js pagination component.

vue-handy-pagination A Vue.js pagination component. Providing simple API, to customize pages, color and other styles very easily. View Demo Try Demo o

Sep 22, 2020