40 lines
915 B
Vue
40 lines
915 B
Vue
<template>
|
|
<div class="aksrt-page-container">
|
|
<PageHeader :title="title" :desc="desc">
|
|
<template #actions>
|
|
<n-space v-if="links.length">
|
|
<n-button v-for="link in links" :key="link.path" quaternary @click="go(link.path)">
|
|
{{ link.label }}
|
|
</n-button>
|
|
</n-space>
|
|
</template>
|
|
</PageHeader>
|
|
|
|
<n-card v-if="note" class="aksrt-section-card">
|
|
<n-alert type="info" :show-icon="false">
|
|
{{ note }}
|
|
</n-alert>
|
|
</n-card>
|
|
|
|
<slot />
|
|
</div>
|
|
</template>
|
|
|
|
<script setup>
|
|
import { useRouter } from 'vue-router'
|
|
import PageHeader from '@/components/PageHeader.vue'
|
|
|
|
defineProps({
|
|
title: { type: String, required: true },
|
|
desc: { type: String, default: '' },
|
|
note: { type: String, default: '' },
|
|
links: { type: Array, default: () => [] },
|
|
})
|
|
|
|
const router = useRouter()
|
|
|
|
function go(path) {
|
|
router.push(path)
|
|
}
|
|
</script>
|