增加标题和图标
This commit is contained in:
@@ -2,6 +2,7 @@
|
|||||||
<html lang="zh">
|
<html lang="zh">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="UTF-8"/>
|
<meta charset="UTF-8"/>
|
||||||
|
<link rel="icon" href="/icon.png">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
|
||||||
<title>API Client</title>
|
<title>API Client</title>
|
||||||
<style>
|
<style>
|
||||||
|
|||||||
BIN
client/public/icon.png
Normal file
BIN
client/public/icon.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 2.2 KiB |
@@ -1,27 +1,31 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
import {ref} from 'vue'
|
import {ref} from "vue";
|
||||||
import {useRouter} from 'vue-router'
|
|
||||||
|
|
||||||
const router = useRouter()
|
const headerNavSelected = ref(['home'])
|
||||||
const headerNav = ref(['home'])
|
|
||||||
|
|
||||||
function handleHeaderNavSelect({item, key, selectedKeys}) {
|
|
||||||
router.push({name: key})
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<a-layout class="container">
|
<a-layout class="container">
|
||||||
<a-layout-header class="header">
|
<a-layout-header class="header">
|
||||||
|
<div class="float-left">
|
||||||
|
<img class="icon w-12 h-12" src="/icon.png" alt="icon">
|
||||||
|
<span class="title mx-3 text-white text-xl">智能服务</span>
|
||||||
|
</div>
|
||||||
<a-menu
|
<a-menu
|
||||||
v-model:selectedKeys="headerNav"
|
v-model:selected-keys="headerNavSelected"
|
||||||
@select="handleHeaderNavSelect"
|
|
||||||
theme="dark"
|
theme="dark"
|
||||||
mode="horizontal"
|
mode="horizontal"
|
||||||
>
|
>
|
||||||
<a-menu-item key="home">首页</a-menu-item>
|
<a-menu-item key="home">
|
||||||
<a-menu-item key="management">管理台</a-menu-item>
|
<router-link to="/home">首页</router-link>
|
||||||
|
</a-menu-item>
|
||||||
|
<a-menu-item key="management">
|
||||||
|
<router-link to="/management">管理台</router-link>
|
||||||
|
</a-menu-item>
|
||||||
</a-menu>
|
</a-menu>
|
||||||
|
<div class="float-right">
|
||||||
|
|
||||||
|
</div>
|
||||||
</a-layout-header>
|
</a-layout-header>
|
||||||
<router-view/>
|
<router-view/>
|
||||||
</a-layout>
|
</a-layout>
|
||||||
@@ -31,4 +35,8 @@ function handleHeaderNavSelect({item, key, selectedKeys}) {
|
|||||||
.container {
|
.container {
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.header {
|
||||||
|
padding: 0 20px 0 20px;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
import {createApp} from 'vue'
|
import {createApp} from 'vue'
|
||||||
import {createRouter, createWebHistory} from 'vue-router'
|
import {createMemoryHistory, createRouter, createWebHistory} from 'vue-router'
|
||||||
import App from './App.vue'
|
import App from './App.vue'
|
||||||
import {Layout, Menu} from 'ant-design-vue'
|
import {Layout, Menu} from 'ant-design-vue'
|
||||||
import 'ant-design-vue/dist/reset.css'
|
import 'ant-design-vue/dist/reset.css'
|
||||||
@@ -20,16 +20,16 @@ createApp(App)
|
|||||||
name: 'management',
|
name: 'management',
|
||||||
path: '/management',
|
path: '/management',
|
||||||
component: () => import('./views/management/Index.vue'),
|
component: () => import('./views/management/Index.vue'),
|
||||||
redirect: 'overview',
|
redirect: '/management/overview',
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
name: 'overview',
|
name: 'overview',
|
||||||
path: '/overview',
|
path: 'overview',
|
||||||
component: () => import('./views/management/Overview.vue'),
|
component: () => import('./views/management/Overview.vue'),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'setting',
|
name: 'setting',
|
||||||
path: '/setting',
|
path: 'setting',
|
||||||
component: () => import('./views/management/Setting.vue'),
|
component: () => import('./views/management/Setting.vue'),
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -1,13 +1,7 @@
|
|||||||
<script setup>
|
<script setup>
|
||||||
import {ref} from 'vue'
|
import {ref} from 'vue'
|
||||||
import {useRouter} from 'vue-router'
|
|
||||||
|
|
||||||
const router = useRouter()
|
|
||||||
const sideNav = ref(['overview'])
|
const sideNav = ref(['overview'])
|
||||||
|
|
||||||
function handleSideNavSelect({item, key, selectedKeys}) {
|
|
||||||
router.push({name: key})
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
@@ -16,17 +10,20 @@ function handleSideNavSelect({item, key, selectedKeys}) {
|
|||||||
<a-menu
|
<a-menu
|
||||||
class="h-full"
|
class="h-full"
|
||||||
v-model:selectedKeys="sideNav"
|
v-model:selectedKeys="sideNav"
|
||||||
@select="handleSideNavSelect"
|
|
||||||
mode="inline"
|
mode="inline"
|
||||||
>
|
>
|
||||||
<a-menu-item key="overview">概览</a-menu-item>
|
<a-menu-item key="overview">
|
||||||
|
<router-link to="/management/overview">概览</router-link>
|
||||||
|
</a-menu-item>
|
||||||
<a-sub-menu key="system">
|
<a-sub-menu key="system">
|
||||||
<template #title>
|
<template #title>
|
||||||
<span>
|
<span>
|
||||||
系统管理
|
系统管理
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
<a-menu-item key="setting">设置</a-menu-item>
|
<a-menu-item key="setting">
|
||||||
|
<router-link to="/management/setting">设置</router-link>
|
||||||
|
</a-menu-item>
|
||||||
</a-sub-menu>
|
</a-sub-menu>
|
||||||
</a-menu>
|
</a-menu>
|
||||||
</a-layout-sider>
|
</a-layout-sider>
|
||||||
|
|||||||
Reference in New Issue
Block a user