feat: 优化布局
parent
8c0c5037b5
commit
649ca40f12
|
|
@ -1,6 +1,6 @@
|
|||
<template>
|
||||
<div class="h-full grid grid-rows-[auto_1fr]">
|
||||
<div class="bg-white dark:bg-gray-800 px-4 py-2">
|
||||
<div class="bg-[#f8f8f8] dark:bg-gray-800 px-4 py-2">
|
||||
<div class="flex justify-between gap-4">
|
||||
<BreadCrumb></BreadCrumb>
|
||||
<div>
|
||||
|
|
@ -9,7 +9,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<slot name="content">
|
||||
<div class="m-4 p-4 bg-white dark:bg-gray-700">
|
||||
<div class="w-full h-full overflow-hidden p-6">
|
||||
<slot></slot>
|
||||
</div>
|
||||
</slot>
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@
|
|||
{{ userStore.nickname }}
|
||||
</span>
|
||||
<i class="icon-park-outline-down"></i>
|
||||
<password-modal></password-modal>
|
||||
</span>
|
||||
<template #content>
|
||||
<a-doption>
|
||||
|
|
@ -22,7 +23,7 @@
|
|||
</div>
|
||||
</a-doption>
|
||||
<a-divider :margin="4"></a-divider>
|
||||
<a-doption>
|
||||
<a-doption @click="password.open()">
|
||||
<template #icon>
|
||||
<i class="icon-park-outline-lock"></i>
|
||||
</template>
|
||||
|
|
@ -46,6 +47,7 @@
|
|||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
import { useAniFormModal } from "@/components";
|
||||
import { useUserStore } from "@/store";
|
||||
import { Message } from "@arco-design/web-vue";
|
||||
|
||||
|
|
@ -58,6 +60,40 @@ const logout = async () => {
|
|||
Message.success("提示:已退出登陆!");
|
||||
router.push({ path: "/login", query: { redirect: route.path } });
|
||||
};
|
||||
|
||||
const [PasswordModal, password] = useAniFormModal({
|
||||
title: "修改密码",
|
||||
trigger: false,
|
||||
modalProps: {
|
||||
width: 452,
|
||||
},
|
||||
items: [
|
||||
{
|
||||
field: "password",
|
||||
label: "原密码",
|
||||
type: "input",
|
||||
nodeProps: {
|
||||
placeholder: "请输入原密码",
|
||||
},
|
||||
},
|
||||
{
|
||||
field: "password1",
|
||||
label: "新密码",
|
||||
type: "input",
|
||||
nodeProps: {
|
||||
placeholder: "请输入新密码",
|
||||
},
|
||||
},
|
||||
{
|
||||
field: "password2",
|
||||
label: "确认密码",
|
||||
type: "input",
|
||||
nodeProps: {
|
||||
placeholder: "请再次输入新密码",
|
||||
},
|
||||
},
|
||||
],
|
||||
});
|
||||
</script>
|
||||
|
||||
<style scoped></style>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<a-layout class="layout">
|
||||
<a-layout-header
|
||||
class="h-13 overflow-hidden flex justify-between items-center gap-4 px-2 pr-4 border-b border-slate-200 bg-white dark:bg-slate-800 dark:border-slate-700"
|
||||
class="h-13 overflow-hidden flex justify-between items-center gap-4 px-2 pr-4 bg-[#dddddd] dark:bg-slate-800"
|
||||
>
|
||||
<div class="h-13 flex items-center border-b border-slate-200 dark:border-slate-800">
|
||||
<router-link to="/" class="px-2 py-2 rounded flex items-center gap-2 text-slate-700">
|
||||
|
|
@ -35,7 +35,7 @@
|
|||
|
||||
<a-layout class="flex flex-1 overflow-hidden">
|
||||
<a-layout-sider
|
||||
class="h-full overflow-hidden dark:bg-slate-800 border-r border-slate-200 dark:border-slate-700"
|
||||
class="h-full overflow-hidden !bg-[#f3f3f3] dark:bg-slate-800"
|
||||
:width="224"
|
||||
:collapsed-width="52"
|
||||
:collapsible="true"
|
||||
|
|
@ -55,8 +55,8 @@
|
|||
></i>
|
||||
</template>
|
||||
</a-layout-sider>
|
||||
<a-layout class="layout-content flex-1">
|
||||
<a-layout-header class="h-8 bg-white border-b border-slate-200 dark:bg-slate-800 dark:border-slate-700">
|
||||
<a-layout class="layout-content flex-1 bg-white">
|
||||
<a-layout-header class="h-8 bg-[#ececec] dark:bg-slate-800">
|
||||
<div class="h-full flex items-center justify-between gap-2 px-4">
|
||||
<div class="space-x-2">
|
||||
<a-tag
|
||||
|
|
@ -83,7 +83,7 @@
|
|||
</div>
|
||||
</a-layout-header>
|
||||
<a-layout-content class="overflow-x-auto">
|
||||
<a-spin :loading="appStore.pageLoding" tip="加载中,请稍等..." class="block h-full w-full">
|
||||
<a-spin :loading="appStore.pageLoding" tip="页面加载中,请稍等..." class="block h-full w-full">
|
||||
<router-view v-slot="{ Component }">
|
||||
<component :is="Component"></component>
|
||||
</router-view>
|
||||
|
|
@ -246,7 +246,6 @@ const tagItems = [
|
|||
// 导致部分内容被截取
|
||||
// min-height: 100vh;
|
||||
overflow-y: hidden;
|
||||
background-color: var(--color-fill-2);
|
||||
transition: padding 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@
|
|||
{
|
||||
"meta": {
|
||||
"sort": 10001,
|
||||
"title": "首页",
|
||||
"title": "概览",
|
||||
"icon": "icon-park-outline-home"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,8 @@
|
|||
<template>
|
||||
<BreadPage>
|
||||
<template #content>
|
||||
<div class="overflow-hidden grid grid-cols-[auto_auto_1fr] m-4 p-4 bg-white">
|
||||
<div class="overflow-hidden grid grid-cols-[auto_auto_1fr]">
|
||||
<div class="w-[210px] h-full overflow-hidden grid grid-rows-[auto_1fr]">
|
||||
<div class="flex gap-2 pr-2">
|
||||
<div class="flex gap-2 pr-4">
|
||||
<a-input-search allow-clear placeholder="分组名称..." class="mb-2"></a-input-search>
|
||||
<a-button>
|
||||
<template #icon>
|
||||
|
|
@ -14,7 +13,7 @@
|
|||
<a-scrollbar outer-class="h-full overflow-hidden" class="h-full overflow-auto">
|
||||
<ul class="pr-4 pl-0 mt-0">
|
||||
<li
|
||||
v-for="i in 50"
|
||||
v-for="i in 5"
|
||||
class="group flex items-center justify-between gap-2 h-8 rounded mb-2 pl-3 hover:bg-gray-100 cursor-pointer"
|
||||
>
|
||||
<div>
|
||||
|
|
@ -65,7 +64,6 @@
|
|||
</Table>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</BreadPage>
|
||||
</template>
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@
|
|||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="flex gap-4 mt-6 px-6">
|
||||
<div class="flex gap-4">
|
||||
<div class="flex-1 bg-white p-4">
|
||||
<a-form :model="{}" layout="vertical">
|
||||
<a-form-item label="标题">
|
||||
|
|
|
|||
|
|
@ -1,13 +1,11 @@
|
|||
<template>
|
||||
<BreadPage>
|
||||
<template #content>
|
||||
<div class="p-4">
|
||||
<a-alert :closable="true" class="mb-2"> 仅展示近 90 天内的数据,如需查看更多数据,请联系管理员。 </a-alert>
|
||||
<div class="bg-white p-4">
|
||||
<div class="">
|
||||
<a-alert :closable="true" class="mb-4"> 仅展示近 90 天内的数据,如需查看更多数据,请联系管理员。 </a-alert>
|
||||
<div class="">
|
||||
<Table v-bind="table"></Table>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</BreadPage>
|
||||
</template>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,6 +1,5 @@
|
|||
<template>
|
||||
<BreadPage>
|
||||
<a-button @click="roleCtx.refresh()">刷新</a-button>
|
||||
<role-table></role-table>
|
||||
</BreadPage>
|
||||
</template>
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ body {
|
|||
box-shadow: none;
|
||||
}
|
||||
.arco-menu,
|
||||
.arco-menu-item {
|
||||
.arco-menu-light .arco-menu-item {
|
||||
background-color: transparent;
|
||||
}
|
||||
.arco-menu-group-title {
|
||||
|
|
@ -68,10 +68,10 @@ body {
|
|||
background-color: var(--color-neutral-2);
|
||||
}
|
||||
&.arco-menu-selected {
|
||||
color: @arcoblue-6;
|
||||
background-color: @arcoblue-1;
|
||||
// color: #fff;
|
||||
// background-color: @arcoblue-6;
|
||||
// color: @arcoblue-6;
|
||||
// background-color: @arcoblue-1;
|
||||
color: #fff;
|
||||
background-color: rgb(var(--primary-6));
|
||||
.arco-menu-icon {
|
||||
color: inherit;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue