<script setup>
import { PhHouse } from "@phosphor-icons/vue";
import { Breadcrumbs } from "@dicehub/phi/components/breadcrumbs";
</script>
<template>
<Breadcrumbs>
<Breadcrumbs.Link :icon="PhHouse" :icon-props="{ size: 16 }" href="#">
Home
</Breadcrumbs.Link>
<Breadcrumbs.Separator />
<Breadcrumbs.Link href="#">Projects</Breadcrumbs.Link>
<Breadcrumbs.Separator />
<Breadcrumbs.Current>Current Project</Breadcrumbs.Current>
</Breadcrumbs>
</template>
Use the root package while prototyping, or the component entrypoint for granular imports.
import { Breadcrumbs } from "@dicehub/phi";
// or use the component entrypoint:
// import { Breadcrumbs } from "@dicehub/phi/components/breadcrumbs";
<script setup>
import { Breadcrumbs } from "@dicehub/phi/components/breadcrumbs";
</script>
<template>
<Breadcrumbs>
<Breadcrumbs.Link href="/">Home</Breadcrumbs.Link>
<Breadcrumbs.Separator />
<Breadcrumbs.Link href="/docs">Docs</Breadcrumbs.Link>
<Breadcrumbs.Separator />
<Breadcrumbs.Current>Breadcrumbs</Breadcrumbs.Current>
</Breadcrumbs>
</template>
Use Breadcrumbs.Current for the active page and keep it non-interactive.
<script setup>
import { Breadcrumbs } from "@dicehub/phi/components/breadcrumbs";
</script>
<template>
<Breadcrumbs>
<Breadcrumbs.Link href="#">Home</Breadcrumbs.Link>
<Breadcrumbs.Separator />
<Breadcrumbs.Link href="#">Docs</Breadcrumbs.Link>
<Breadcrumbs.Separator />
<Breadcrumbs.Current>Breadcrumbs</Breadcrumbs.Current>
</Breadcrumbs>
</template>
<script setup>
import { PhHouse } from "@phosphor-icons/vue";
import { Breadcrumbs } from "@dicehub/phi/components/breadcrumbs";
</script>
<template>
<Breadcrumbs>
<Breadcrumbs.Link :icon="PhHouse" :icon-props="{ size: 16 }" href="#">
Home
</Breadcrumbs.Link>
<Breadcrumbs.Separator />
<Breadcrumbs.Link href="#">Docs</Breadcrumbs.Link>
<Breadcrumbs.Separator />
<Breadcrumbs.Current loading />
</Breadcrumbs>
</template>
<script setup>
import { PhHouse } from "@phosphor-icons/vue";
import { Breadcrumbs } from "@dicehub/phi/components/breadcrumbs";
</script>
<template>
<Breadcrumbs>
<Breadcrumbs.Current :icon="PhHouse" :icon-props="{ size: 16 }">
Worker Analytics
</Breadcrumbs.Current>
</Breadcrumbs>
</template>
<script setup>
import { Breadcrumbs } from "@dicehub/phi/components/breadcrumbs";
</script>
<template>
<Breadcrumbs>
<Breadcrumbs.Link href="#">Home</Breadcrumbs.Link>
<Breadcrumbs.Separator />
<Breadcrumbs.Current>Breadcrumbs</Breadcrumbs.Current>
<Breadcrumbs.Clipboard text="#" />
</Breadcrumbs>
</template>
| Prop | Type | Default | Description |
|---|
size | "sm" | "base" | "base" | Sets the breadcrumb trail size. |
| Prop | Type | Default | Description |
|---|
href | string | - | Target URL for a breadcrumb link. |
icon | Component | - | Vue component rendered before the link label. |
iconProps | Record<string, unknown> | {} | Props forwarded to the link icon component. |
| Prop | Type | Default | Description |
|---|
loading | boolean | false | Shows a skeleton placeholder for the current page label. |
icon | Component | - | Vue component rendered before the current label. |
iconProps | Record<string, unknown> | {} | Props forwarded to the current icon component. |
No component-specific props.
| Prop | Type | Default | Description |
|---|
text | string | - | Text copied by the clipboard action. |