diff --git a/src/App.vue b/src/App.vue
index 279c91b..07f1866 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -39,9 +39,9 @@ body,
}
html {
- background-size: cover;
- background: url('@/assets/bg.png') no-repeat fixed center center;
- overflow: hidden;
+ /*background-size: cover;*/
+ /*background: url('@/assets/bg.png') no-repeat fixed center center;*/
+ /*overflow: hidden;*/
}
.clear:after {
diff --git a/src/config/gameList.js b/src/config/gameList.js
new file mode 100644
index 0000000..e8b1832
--- /dev/null
+++ b/src/config/gameList.js
@@ -0,0 +1,40 @@
+// 游戏列表
+export const GAME_LIST = [
+ { id: '1', name: 'balloon', text: '踩气球', order: 1, site: 'LowerLimb' },
+ { id: '2', name: 'tomato', text: '番茄炒蛋', order: 2, site: 'Hand' },
+ { id: '3', name: 'hurdle', text: '跨栏', order: 3, site: 'LowerLimb' },
+ { id: '4', name: 'basketball', text: '投篮', order: 4, site: 'UpperLimb' },
+ { id: '5', name: 'bird', text: '鸟妈妈回家', order: 5, site: 'UpperLimb' },
+ { id: '6', name: 'bomb', text: '太空战机', order: 6, site: 'Hand' },
+ { id: '7', name: 'football', text: '踢足球', order: 7, site: 'LowerLimb' },
+ { id: '8', name: 'apple', text: '摘苹果', order: 8, site: 'Hand' },
+ { id: '9', name: 'orange-juice', text: '挤橙汁', order: 9, site: 'Hand' },
+ { id: '10', name: 'golf', text: '高尔夫', order: 10, site: 'UpperLimb' },
+ { id: '11', name: 'fish', text: '大鱼吃小鱼', order: 11, site: 'Hand' },
+ { id: '12', name: 'radish', text: '拔萝卜', order: 12, site: 'UpperLimb' },
+];
+
+/**
+ * 游戏列表 按分类展示
+ * @returns {{LowerLimb: Object[], Hand: Object[], UpperLimb: Object[]}}
+ * @constructor
+ */
+export function getAllGames() {
+ const result = {};
+ GAME_LIST.forEach(item => {
+ if (result[item.site]) {
+ result[item.site].push(item);
+ } else {
+ result[item.site] = [item];
+ }
+ });
+ return result;
+}
+
+/* eslint-disable max-len */
+/**
+ * 获取某个分类下游戏列表
+ * @param { string } siteName 训练部位name
+ * @returns {({site: string, name: string, id: string, text: string, order: number}|{site: string, name: string, id: string, text: string, order: number}|{site: string, name: string, id: string, text: string, order: number}|{site: string, name: string, id: string, text: string, order: number}|{site: string, name: string, id: string, text: string, order: number})[]}
+ */
+export const getGamesBySite = siteName => GAME_LIST.filter(item => item.site === siteName);
diff --git a/src/config/trainSite.js b/src/config/trainSite.js
new file mode 100644
index 0000000..6310ff9
--- /dev/null
+++ b/src/config/trainSite.js
@@ -0,0 +1,7 @@
+// 训练列表
+// eslint-disable-next-line import/prefer-default-export
+export const TRAIN_SITE_LIST = [
+ { id: '1', name: 'UpperLimb', text: '上肢训练', order: 1 },
+ { id: '2', name: 'Hand', text: '手部训练', order: 2 },
+ { id: '3', name: 'LowerLimb', text: '下肢训练', order: 3 },
+];
diff --git a/src/routers/index.js b/src/routers/index.js
index 25f84f0..262b209 100644
--- a/src/routers/index.js
+++ b/src/routers/index.js
@@ -14,7 +14,8 @@ const router = createRouter({
path: '/',
redirect: '/kangfu/game/start',
},
- ].concat(routes),
+ ...routes,
+ ],
});
export default router;
diff --git a/src/store/index.js b/src/store/index.js
index 4d6cf1f..cc3c57f 100644
--- a/src/store/index.js
+++ b/src/store/index.js
@@ -1,20 +1,26 @@
import { createStore } from 'vuex';
+import { getGamesBySite } from 'config/gameList';
export default createStore({
- state: { modal: false, monitor: true },
- getters: {},
+ state: { selectedSite: '' },
+ getters: {
+ /**
+ * 当前选中的训练部位下的 游戏列表
+ * @param {string} selectedSite
+ * @returns {{site: string, name: string, id: string, text: string, order: number}[]|*[]}
+ */
+ selectedGames({ selectedSite }) {
+ return getGamesBySite(selectedSite) || [];
+ },
+ },
mutations: {
/**
- * 设置modal是否显示
+ * 设置选中的训练部位
* @param state
- * @param {Boolean} display
+ * @param {string} site
*/
- setModal(state, display) {
- state.modal = display;
- },
-
- setMonitor(state, display) {
- state.monitor = display;
+ setSelectedSite(state, site) {
+ state.selectedSite = site;
},
},
actions: {},
diff --git a/src/views/GameList.vue b/src/views/GameList.vue
index bdd3840..ff10ab2 100644
--- a/src/views/GameList.vue
+++ b/src/views/GameList.vue
@@ -1,11 +1,25 @@
+
游戏列表选择
+
+ {{ item.text }}
+
-
diff --git a/src/views/Index.vue b/src/views/Index.vue
index 7aa688f..adb93f6 100644
--- a/src/views/Index.vue
+++ b/src/views/Index.vue
@@ -1,11 +1,8 @@
入口页
+
-
+
diff --git a/src/views/TrainSiteList.vue b/src/views/TrainSiteList.vue
index b5f38f1..b9643f0 100644
--- a/src/views/TrainSiteList.vue
+++ b/src/views/TrainSiteList.vue
@@ -1,11 +1,27 @@
训练部位选择
+
+ {{ item.text }}
+
-