대시보드 Navbar
대시보드에 표시할 응답형 navbar입니다.A responsible navbar to display in a dashboard.
Usage
DashboardNavbar 구성 요소는 DashboardSidebar 구성 요소와 통합되는 응답형 탐색 막대입니다. 대시보드 레이아웃에서 응답형 탐색을 활성화하는 모바일 전환 단추가 포함되어 있습니다.
DashboardPanel 구성 요소의 header 슬롯 내에서 사용합니다.
pages/index.vue
<script setup lang="ts">
definePageMeta({
layout: 'dashboard'
})
</script>
<template>
<UDashboardPanel>
<template #header>
<UDashboardNavbar />
</template>
</UDashboardPanel>
</template>
left, default 및 right 슬롯을 사용하여 navbar를 사용자 지정합니다.
Inbox
4<script setup lang="ts">
import type { TabsItem } from '@nuxt/ui'
const items: TabsItem[] = [
{
label: 'All',
value: 'all'
},
{
label: 'Unread',
value: 'unread'
}
]
</script>
<template>
<UDashboardNavbar title="Inbox">
<template #leading>
<UDashboardSidebarCollapse />
</template>
<template #trailing>
<UBadge label="4" variant="subtle" />
</template>
<template #right>
<UTabs :items="items" default-value="all" size="sm" class="w-40" :content="false" />
</template>
</UDashboardNavbar>
</template>이 예제에서는 오른쪽 슬롯에 있는 Tabs 구성 요소를 사용하여 일부 탭을 표시합니다.
제목
title Prop 을 사용하여 navbar 의 제목을 설정합니다.
Dashboard
<template>
<UDashboardNavbar title="Dashboard" />
</template>Icon 이미지
icon prop 를 사용하여 navbar 아이콘을 설정합니다.
Dashboard
<template>
<UDashboardNavbar title="Dashboard" icon="i-lucide-house" />
</template>토글
toggle 소품을 사용하여 DashboardSidebar 구성 요소를 여는 모바일에 표시되는 토글 버튼을 사용자 정의합니다.
Button 구성 요소의 모든 속성을 전달하여 사용자 정의할 수 있습니다.
<template>
<UDashboardNavbar
title="Dashboard"
:toggle="{
color: 'primary',
variant: 'subtle',
class: 'rounded-full'
}"
/>
</template>
면 전환
toggle-side 소품을 사용하여 토글 버튼의 측면을 변경합니다. 기본값은 right입니다.
<template>
<UDashboardNavbar
title="Dashboard"
toggle-side="right"
/>
</template>
API 파일
Props
| Prop | Default | Type |
|---|---|---|
as | 'div' | anyThe element or component this component should render as. |
icon | anyThe icon displayed next to the title. | |
title | string | |
toggle | true | boolean | Omit<ButtonProps, LinkPropsKeys> Customize the toggle button to open the sidebar.
|
toggleSide | 'left' | "left" | "right"The side to render the toggle button on. |
ui | { root?: SlotClass; left?: SlotClass; icon?: SlotClass; title?: SlotClass; center?: SlotClass; right?: SlotClass; toggle?: SlotClass; } |
Slots
| Slot | Type |
|---|---|
title | {} |
leading | DashboardNavbarSlotsProps & { ui: object; } |
trailing | DashboardNavbarSlotsProps & { ui: object; } |
left | DashboardNavbarSlotsProps |
default | DashboardNavbarSlotsProps |
right | DashboardNavbarSlotsProps |
toggle | DashboardNavbarSlotsProps & { ui: object; } |
Theme 테마
app.config.ts
export default defineAppConfig({
ui: {
dashboardNavbar: {
slots: {
root: 'h-(--ui-header-height) shrink-0 flex items-center justify-between border-b border-default px-4 sm:px-6 gap-1.5',
left: 'flex items-center gap-1.5 min-w-0',
icon: 'shrink-0 size-5 self-center me-1.5',
title: 'flex items-center gap-1.5 font-semibold text-highlighted truncate',
center: 'hidden lg:flex',
right: 'flex items-center shrink-0 gap-1.5',
toggle: ''
},
variants: {
toggleSide: {
left: {
toggle: ''
},
right: {
toggle: ''
}
}
}
}
}
})vite.config.ts
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import ui from '@nuxt/ui/vite'
export default defineConfig({
plugins: [
vue(),
ui({
ui: {
dashboardNavbar: {
slots: {
root: 'h-(--ui-header-height) shrink-0 flex items-center justify-between border-b border-default px-4 sm:px-6 gap-1.5',
left: 'flex items-center gap-1.5 min-w-0',
icon: 'shrink-0 size-5 self-center me-1.5',
title: 'flex items-center gap-1.5 font-semibold text-highlighted truncate',
center: 'hidden lg:flex',
right: 'flex items-center shrink-0 gap-1.5',
toggle: ''
},
variants: {
toggleSide: {
left: {
toggle: ''
},
right: {
toggle: ''
}
}
}
}
}
})
]
})변경 로그
No recent changes