diff --git a/package.json b/package.json
index 40ac132..6e00a21 100644
--- a/package.json
+++ b/package.json
@@ -24,7 +24,7 @@
"register-service-worker": "^1.6.2",
"vue": "^2.6.10",
"vue-router": "^3.0.3",
- "vuex": "^3.0.1"
+ "vuex": "^3.1.1"
},
"devDependencies": {
"@vue/cli-plugin-babel": "^3.8.0",
diff --git a/src/main.js b/src/main.js
index e03c751..580e775 100644
--- a/src/main.js
+++ b/src/main.js
@@ -1,7 +1,7 @@
import Vue from 'vue';
import App from './App.vue';
import router from './router';
-import store from './store';
+import store from './store/store';
import './registerServiceWorker';
Vue.config.productionTip = false;
diff --git a/src/store/modules/FAQs.module.js b/src/store/modules/FAQs.module.js
new file mode 100644
index 0000000..8e31d70
--- /dev/null
+++ b/src/store/modules/FAQs.module.js
@@ -0,0 +1,28 @@
+const FAQsModule = {
+ namespaced: true,
+ state: {
+ FAQs: [],
+ },
+
+ mutations: {
+ ADD_FAQS(state, FAQs) {
+ state.FAQs = FAQs;
+ },
+ },
+
+ actions: {
+ addFAQsAction(context) {
+ fetch('https://api-dev.codinggarden.community/faqs')
+ .then(n => n.json())
+ .then(json => {
+ const dataItems = json.map(n => ({
+ ...n.attributes,
+ isOpen: false,
+ }));
+ context.commit('ADD_FAQS', dataItems);
+ });
+ },
+ },
+};
+
+export default FAQsModule;
diff --git a/src/store.js b/src/store/store.js
similarity index 59%
rename from src/store.js
rename to src/store/store.js
index 505f960..2eef73b 100644
--- a/src/store.js
+++ b/src/store/store.js
@@ -1,10 +1,11 @@
import Vue from 'vue';
import Vuex from 'vuex';
+import FAQs from './modules/FAQs.module';
Vue.use(Vuex);
export default new Vuex.Store({
- state: {},
- mutations: {},
- actions: {},
+ modules: {
+ FAQs,
+ },
});
diff --git a/src/views/FAQPage/FAQList.vue b/src/views/FAQPage/FAQList.vue
index 12d3c61..0012f94 100644
--- a/src/views/FAQPage/FAQList.vue
+++ b/src/views/FAQPage/FAQList.vue
@@ -1,19 +1,21 @@
-
+