cloudy2331 d4ce6e6261 Init
2025-03-01 15:21:33 +08:00

77 lines
1.9 KiB
Vue

<template>
<t-layout class="main-layout">
<t-aside>
<t-menu theme="light" default-value="General" :collapsed="collapsed" @change="changeHandler">
<template #logo>
<span style="font-size: larger">{{ collapsed? "PSH" : "Proxy Subscribe Hub" }}</span>
</template>
<t-menu-item value="General">
<template #icon>
<app-icon />
</template>
总览
</t-menu-item>
<!-- <t-menu-item value="item2">节点管理</t-menu-item> -->
<template #operations>
<t-button
variant="text"
shape="square"
theme="default"
@click="collapsed = !collapsed;"
style="background-color: #fff"
>
<view-list-icon />
</t-button>
</template>
</t-menu>
</t-aside>
<t-layout>
<t-content style="overflow: auto">
<div>
<General
@toSubscribeItem="(url, name) => toSubscribeItem(url, name)"
v-if="menuValue === 'General'"
/>
<SubscribeItem
@backToGeneral="menuValue = 'General'"
:propsData="Url"
:name="Name"
v-if="menuValue === 'SubscribeItem'"
/>
</div>
</t-content>
</t-layout>
</t-layout>
</template>
<style scoped>
.main-layout {
height: 100vh;
width: 100vw;
}
</style>
<script setup>
import General from "./General.vue";
import SubscribeItem from "./SubscribeItem.vue";
import { ref } from "vue";
import { ViewListIcon, AppIcon } from "tdesign-icons-vue-next";
const menuValue = ref("General");
const collapsed = ref(false);
let Url = "";
let Name = "";
function changeHandler(active) {
console.log(active);
menuValue.value = active;
}
function toSubscribeItem(url, name) {
// console.log(url);
Url = url;
Name = name;
menuValue.value = "SubscribeItem";
}
</script>