From d1d4267827f19b64bff501a99cf406df5308f85f Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Mon, 1 Feb 2021 17:57:34 +0000 Subject: [PATCH] --- ayanova/src/api/gzutil.js | 4 ++++ ayanova/src/components/data-table.vue | 17 +++++++++++------ 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/ayanova/src/api/gzutil.js b/ayanova/src/api/gzutil.js index 2468c1ef..fdd25117 100644 --- a/ayanova/src/api/gzutil.js +++ b/ayanova/src/api/gzutil.js @@ -641,6 +641,10 @@ export default { /////////////////////////////////////////////// // Simple array equality comparison // (will NOT work on arrays of objects) + // Array order is relevant here as they are not sorted + // change of order will equal change of array + // as this is required for datatable sortby + // isEqualArraysOfPrimitives: function(a, b) { if (a === b) return true; if (a == null || b == null) return false; diff --git a/ayanova/src/components/data-table.vue b/ayanova/src/components/data-table.vue index b2785da1..e82c70e4 100644 --- a/ayanova/src/components/data-table.vue +++ b/ayanova/src/components/data-table.vue @@ -450,19 +450,24 @@ export default { ) ); - if ( + let pagingHaschanged = !( this.lastDataTablePagingOptions.page == this.dataTablePagingOptions.page && this.lastDataTablePagingOptions.itemsPerPage == - this.dataTablePagingOptions.itemsPerPage && - !sortHasChanged - ) { + this.dataTablePagingOptions.itemsPerPage + ); + + if (!pagingHaschanged && !sortHasChanged) { //no effective change, return console.log("NO CHANGE"); return; } - console.log("Has changed"); - + if (pagingHaschanged) { + console.log("PAGING Has changed"); + } + if (sortHasChanged) { + console.log("SORT Has changed"); + } //has changed something important so refetch and put a pin in last paging settings for next time this.getDataFromApi(); this.lastDataTablePagingOptions = this.dataTablePagingOptions;