added a filter reset button

Signed-off-by: Jakob Röhrl <jakob.roehrl@web.de>
This commit is contained in:
Jakob Röhrl
2020-05-13 10:56:46 +02:00
committed by Julius Härtl
parent b65788515a
commit 9293fa2f96
2 changed files with 17 additions and 1 deletions

View File

@@ -146,6 +146,10 @@
@click="beforeSetFilter">
<label for="noDue">{{ t('deck', 'No due date') }}</label>
</div>
<Button :disabled="!isFilterActive" @click="clearFilter">
{{ t('deck', 'Clear filter') }}
</Button>
</div>
</template>
</Popover>
@@ -229,6 +233,11 @@ export default {
return [...this.board.labels].sort((a, b) => (a.title < b.title) ? -1 : 1)
},
},
watch: {
board() {
this.clearFilter()
},
},
methods: {
beforeSetFilter(e) {
if (this.filter.due === e.target.value) {
@@ -269,6 +278,11 @@ export default {
this.$router.push({ name: 'board.details' })
}
},
clearFilter() {
const filterReset = { tags: [], users: [], due: '' }
this.$store.dispatch('setFilter', { ...filterReset })
this.filter = filterReset
},
},
}
</script>

View File

@@ -256,7 +256,9 @@ export default new Vuex.Store({
setFilter({ commit }, filter) {
commit('setFilter', filter)
},
async loadBoardById({ commit }, boardId) {
async loadBoardById({ commit, dispatch }, boardId) {
const filterReset = { tags: [], users: [], due: '' }
dispatch('setFilter', filterReset)
commit('setCurrentBoard', null)
const board = await apiClient.loadById(boardId)
commit('setCurrentBoard', board)