diff --git a/web/package-lock.json b/web/package-lock.json
index 53a6eb9..8947b3b 100644
--- a/web/package-lock.json
+++ b/web/package-lock.json
@@ -8,6 +8,7 @@
"name": "web",
"version": "0.1.0",
"dependencies": {
+ "@popperjs/core": "^2.11.5",
"bootstrap": "^5.2.0",
"core-js": "^3.8.3",
"jquery": "^3.6.0",
@@ -1936,6 +1937,11 @@
"integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==",
"dev": true
},
+ "node_modules/@popperjs/core": {
+ "version": "2.11.5",
+ "resolved": "https://registry.npmmirror.com/@popperjs/core/-/core-2.11.5.tgz",
+ "integrity": "sha512-9X2obfABZuDVLCgPK9aX0a/x4jaOEweTTWE2+9sr0Qqqevj2Uv5XorvusThmc9XGYpS9yI+fhh8RTafBtGposw=="
+ },
"node_modules/@sideway/address": {
"version": "4.1.4",
"resolved": "https://registry.npmmirror.com/@sideway/address/-/address-4.1.4.tgz",
@@ -12232,6 +12238,11 @@
"integrity": "sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g==",
"dev": true
},
+ "@popperjs/core": {
+ "version": "2.11.5",
+ "resolved": "https://registry.npmmirror.com/@popperjs/core/-/core-2.11.5.tgz",
+ "integrity": "sha512-9X2obfABZuDVLCgPK9aX0a/x4jaOEweTTWE2+9sr0Qqqevj2Uv5XorvusThmc9XGYpS9yI+fhh8RTafBtGposw=="
+ },
"@sideway/address": {
"version": "4.1.4",
"resolved": "https://registry.npmmirror.com/@sideway/address/-/address-4.1.4.tgz",
diff --git a/web/package.json b/web/package.json
index 84957c3..4202131 100644
--- a/web/package.json
+++ b/web/package.json
@@ -8,6 +8,7 @@
"lint": "vue-cli-service lint"
},
"dependencies": {
+ "@popperjs/core": "^2.11.5",
"bootstrap": "^5.2.0",
"core-js": "^3.8.3",
"jquery": "^3.6.0",
diff --git a/web/src/App.vue b/web/src/App.vue
index 052988c..c6b7f10 100644
--- a/web/src/App.vue
+++ b/web/src/App.vue
@@ -1,34 +1,38 @@
-
-
Bot昵称:{{bot_name}}
-
Bot战力:{{bot_rating}}
-
+
diff --git a/web/src/components/ContentField.vue b/web/src/components/ContentField.vue
new file mode 100644
index 0000000..1e446ec
--- /dev/null
+++ b/web/src/components/ContentField.vue
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/components/NavBar.vue b/web/src/components/NavBar.vue
new file mode 100644
index 0000000..1dd0b8a
--- /dev/null
+++ b/web/src/components/NavBar.vue
@@ -0,0 +1,73 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/router/index.js b/web/src/router/index.js
index e9e42ee..a304821 100644
--- a/web/src/router/index.js
+++ b/web/src/router/index.js
@@ -1,6 +1,53 @@
import { createRouter, createWebHistory } from 'vue-router'
+import NotFound from '../views/error/NotFound'
+import PkIndexView from '../views/pk/PkIndexView'
+import RanklistIndexView from '../views/ranklist/RanklistIndexView'
+import RecordIndexView from '../views/record/RecordIndexView'
+import UserBotIndexView from '../views/user/bot/UserBotIndexView'
const routes = [
+ {
+ path: "/",
+ name:"home",
+ redirect:"/pk/",
+ },
+ //pk
+ {
+ path:"/pk/",
+ name:"pk_index",
+ component:PkIndexView,
+ },
+ //对战列表
+ {
+ path:"/record/",
+ name:"record_index",
+ component:RecordIndexView,
+ },
+ //排行榜
+ {
+ path:"/ranklist/",
+ name:"ranklist_index",
+ component:RanklistIndexView,
+ },
+ //我的Bot
+ {
+ path:"/user/bot/",
+ name:"user_bot_index",
+ component:UserBotIndexView,
+ },
+ //404页面
+ {
+ path:"/404/",
+ name:"404",
+ component:NotFound,
+ },
+ //匹配其他未路由的页面
+ {
+ path:"/:catChAll(.*)",
+ redirect:"/404/",
+ }
+
+
]
const router = createRouter({
diff --git a/web/src/views/error/NotFound.vue b/web/src/views/error/NotFound.vue
new file mode 100644
index 0000000..e770425
--- /dev/null
+++ b/web/src/views/error/NotFound.vue
@@ -0,0 +1,19 @@
+
+
+ 404
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/views/pk/PkIndexView.vue b/web/src/views/pk/PkIndexView.vue
new file mode 100644
index 0000000..21bd895
--- /dev/null
+++ b/web/src/views/pk/PkIndexView.vue
@@ -0,0 +1,20 @@
+
+
+ PK卡槽
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/views/ranklist/RanklistIndexView.vue b/web/src/views/ranklist/RanklistIndexView.vue
new file mode 100644
index 0000000..15b2d0a
--- /dev/null
+++ b/web/src/views/ranklist/RanklistIndexView.vue
@@ -0,0 +1,19 @@
+
+
+ 排行榜卡槽
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/views/record/RecordIndexView.vue b/web/src/views/record/RecordIndexView.vue
new file mode 100644
index 0000000..716abcd
--- /dev/null
+++ b/web/src/views/record/RecordIndexView.vue
@@ -0,0 +1,19 @@
+
+
+ 对局列表卡槽
+
+
+
+
+
+
\ No newline at end of file
diff --git a/web/src/views/user/bot/UserBotIndexView.vue b/web/src/views/user/bot/UserBotIndexView.vue
new file mode 100644
index 0000000..fdd547a
--- /dev/null
+++ b/web/src/views/user/bot/UserBotIndexView.vue
@@ -0,0 +1,19 @@
+
+
+ 我的Bots
+
+
+
+
+
+
\ No newline at end of file