Files
certd/packages/ui/certd-client/src/views/sys/settings/index.vue
T

75 lines
2.0 KiB
Vue
Raw Normal View History

<template>
<fs-page class="page-sys-settings">
2024-11-28 17:36:45 +08:00
<!-- <template #header>-->
<!-- <div class="title">系统设置</div>-->
<!-- </template>-->
2025-03-11 22:25:14 +08:00
<div class="sys-settings-body md:p-5">
2024-11-30 01:57:09 +08:00
<a-tabs :active-key="activeKey" type="card" class="sys-settings-tabs" @update:active-key="onChange">
<a-tab-pane key="" tab="基本设置">
<SettingBase v-if="activeKey === ''" />
2024-11-28 17:36:45 +08:00
</a-tab-pane>
<a-tab-pane key="register" tab="注册设置">
2024-11-30 01:57:09 +08:00
<SettingRegister v-if="activeKey === 'register'" />
2024-11-28 17:36:45 +08:00
</a-tab-pane>
2024-12-24 01:12:12 +08:00
<a-tab-pane v-if="settingsStore.isComm" key="payment" tab="支付设置">
2024-12-22 14:00:46 +08:00
<SettingPayment v-if="activeKey === 'payment'" />
</a-tab-pane>
2024-11-28 17:36:45 +08:00
</a-tabs>
</div>
</fs-page>
</template>
2024-11-13 22:42:11 +08:00
<script setup lang="tsx">
2024-11-28 17:36:45 +08:00
import SettingBase from "/@/views/sys/settings/tabs/base.vue";
import SettingRegister from "/@/views/sys/settings/tabs/register.vue";
2024-12-22 14:00:46 +08:00
import SettingPayment from "/@/views/sys/settings/tabs/payment.vue";
2024-11-30 01:57:09 +08:00
import { useRoute, useRouter } from "vue-router";
import { ref } from "vue";
2024-12-24 01:12:12 +08:00
import { useSettingStore } from "/@/store/modules/settings";
defineOptions({
name: "SysSettings"
});
2024-12-24 01:12:12 +08:00
const settingsStore = useSettingStore();
2024-11-30 01:57:09 +08:00
const activeKey = ref("");
const route = useRoute();
const router = useRouter();
if (route.query.tab) {
activeKey.value = (route.query.tab as string) || "";
}
function onChange(value: string) {
// activeKey.value = value;
// 创建一个新的查询参数对象
const query: any = {};
if (value !== "") {
query.tab = value;
}
// 使用`push`方法更新路由,保留其他查询参数不变
router.push({ path: route.path, query });
}
</script>
<style lang="less">
.page-sys-settings {
.sys-settings-form {
width: 500px;
2025-03-11 22:25:14 +08:00
max-width: 100%;
padding: 20px;
}
2024-11-28 17:36:45 +08:00
.sys-settings-body {
height: 100%;
padding-top: 20px;
.sys-settings-tabs {
height: 100%;
display: flex;
flex-direction: column;
.ant-tabs-content-holder {
flex: 1;
overflow: auto;
}
}
}
}
</style>