BottomTabs
Mobile bottom nav bar or floating dock
The main sections of a phone-sized app, three to five of them, in reach of the thumb. On wide screens use a SidebarNav or a top bar instead; for switching views inside one page, Tabs.
Basic
home
dock variant, inline:
baris fixed to the bottom and pads itself for the home indicator (--bless-safe-bottom); leave the same room at the bottom of the page so nothing hides under it.dockfloats as an icon strip.hrefmakes a tab a link (through your router, see Install); the active one hasaria-current="page".- A badge is read with its tab ("Inbox, 3 new");
badgeLabelsets the word.
Usage
ts
import { BlessBottomTabs } from "blessing-ui";API
Props
| Name | Type | Default | Description |
|---|---|---|---|
items* | BlessBottomTab[] | — | |
variant | "bar" | "dock" | "bar" | bar = full-width fixed bottom nav; dock = floating icon strip |
inline | boolean | — | render in place instead of fixed to the viewport (docs / previews) |
label | string | "Primary" | |
badgeLabel | string | "new" | read after a tab with a badge: a count becomes "3 new", `true` becomes "new" |
modelValue | string | — |
Events
| Name | Payload | Description |
|---|---|---|
select | [item: BlessBottomTab, e: Event] | |
update:modelValue | [value: string | undefined] |
Slots
| Name | Scope | Description |
|---|---|---|
icon | { item: BlessBottomTab; } |