From 6912a96f21dda4210f93c1539c1d70e373758aaa Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 22 Jun 2019 20:07:11 +0200 Subject: [PATCH] Getters instead of accessing state directly --- components/Sidebar.vue | 2 +- store/data.js | 16 +++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/components/Sidebar.vue b/components/Sidebar.vue index 7050961..ec4c0c2 100644 --- a/components/Sidebar.vue +++ b/components/Sidebar.vue @@ -14,7 +14,7 @@ export default { } }, created() { - this.categories = this.$store.state.data.resources.map(({ title, slug }) => ({ title, slug })) + this.categories = this.$store.getters['data/resources'].map(({ title, slug }) => ({ title, slug })) } } diff --git a/store/data.js b/store/data.js index 669d938..03cdd45 100644 --- a/store/data.js +++ b/store/data.js @@ -36,11 +36,13 @@ export const state = () => ({ }) export const getters = { - findResources: state => title => { - return state.resources.find(resource => resource.title.toLowerCase() === title.toLowerCase()) - }, - findByTags: state => tags => { - const flat = state.resources.map(category => category.resources).flat() - return flat.filter(resource => resource.tags && includesElOf(resource.tags, tags)) - } + tags: state => state.tags, + resources: state => state.resources, + findResources: state => title => { + return state.resources.find(resource => resource.title.toLowerCase() === title.toLowerCase()) + }, + findByTags: state => tags => { + const flat = state.resources.map(category => category.resources).flat() + return flat.filter(resource => resource.tags && includesElOf(resource.tags, tags)) + } } \ No newline at end of file