vue-paginate
Advanced tools
Comparing version 1.0.0 to 1.1.0
{ | ||
"name": "vue-paginate", | ||
"version": "1.0.0", | ||
"version": "1.1.0", | ||
"description": "A simple vue.js plugin to paginate data", | ||
@@ -5,0 +5,0 @@ "main": "vue-paginate.js", |
@@ -16,2 +16,11 @@ ;(function () { | ||
function setNumberOfPages (vm, listName, length) { | ||
state[listName].numberOfItems = length; | ||
state[listName].numberOfPages = Math.ceil(state[listName].numberOfItems / state[listName].perPage); | ||
// Set numberOfPages on the vm instance | ||
// so you can use it in your links section. | ||
vm.$set(listName + 'Links', state[listName].numberOfPages); | ||
} | ||
vuePaginate.install = function (Vue) { | ||
@@ -39,10 +48,6 @@ Vue.directive('paginate', { | ||
state[listName] = { currentPage: 0 }; | ||
state[listName].numberOfItems = originalLists[listName].length; | ||
state[listName].perPage = perPage; | ||
state[listName].numberOfPages = Math.ceil(state[listName].numberOfItems / state[listName].perPage); | ||
setNumberOfPages(vm, listName, originalLists[listName].length); | ||
// Set numberOfPages on the vm instance | ||
// so you can use it in your links section. | ||
vm.$set(listName + 'Links', state[listName].numberOfPages); | ||
vm['change' + helpers.capitalize(listName) + 'Page'] = function (page) { | ||
@@ -74,3 +79,7 @@ // Reset the list with original data for two reasons: | ||
// Turn on warnings | ||
vm['refresh' + helpers.capitalize(listName) + 'Page'] = function () { | ||
vm['change' + helpers.capitalize(listName) + 'Page'](0); | ||
}; | ||
// Turn on warnings back | ||
Vue.config.silent = false; | ||
@@ -81,3 +90,6 @@ }, | ||
var listName = this.expression; | ||
// Refresh number of pages (useful in case you're filtering the list) | ||
setNumberOfPages(this.vm, listName, list.length); | ||
state[listName].currentPage = state[listName].currentPage >= state[listName].numberOfPages ? | ||
@@ -104,1 +116,2 @@ state[listName].numberOfPages - 1 : | ||
})(); | ||
8777
82