From 5aed4ceff7cec12341d221a66deb5a32992690f1 Mon Sep 17 00:00:00 2001 From: Tobias Johansson Date: Wed, 20 Mar 2019 15:19:37 +0100 Subject: [PATCH] Avoid emitting duplicate selectedItemsChanged --- src/scripts/js/es6/common/vuecomponents/table/Table.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/scripts/js/es6/common/vuecomponents/table/Table.js b/src/scripts/js/es6/common/vuecomponents/table/Table.js index b5cc958d..ebf03ba0 100644 --- a/src/scripts/js/es6/common/vuecomponents/table/Table.js +++ b/src/scripts/js/es6/common/vuecomponents/table/Table.js @@ -129,7 +129,11 @@ let PillarTable = Vue.component('pillar-table-base', { }); }, selectedItems(newValue, oldValue) { - this.$emit('selectItemsChanged', newValue); + // Deep compare to avoid spamming un needed events + let hasChanged = JSON.stringify(newValue ) === JSON.stringify(oldValue); + if (!hasChanged) { + this.$emit('selectItemsChanged', newValue); + } }, isInitialized(newValue) { if (newValue) {