Skip to content

Commit cda66c4

Browse files
committed
feat: breadcrumb adding a unified item click event trigger
1 parent cc3c742 commit cda66c4

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

packages/ui/src/components/breadcrumb/source/Breadcrumb.tsx

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,19 @@ function renderBreadcrumbContent<T extends BreadcrumbItem>(item: T, renderItem:
3131
}
3232

3333
const Breadcrumb = <T extends BreadcrumbItem>(props: BreadcrumbProps<T>, ref: Ref<HTMLElement>) => {
34-
const { className, classNames, ellipsis, ellipsisIcon, items, renderEllipsis, renderItem, separator, size, ...rest } =
35-
props;
34+
const {
35+
className,
36+
classNames,
37+
ellipsis,
38+
ellipsisIcon,
39+
handleItemClick,
40+
items,
41+
renderEllipsis,
42+
renderItem,
43+
separator,
44+
size,
45+
...rest
46+
} = props;
3647

3748
const computedEllipsisRange = getEllipsisRange();
3849

@@ -106,6 +117,7 @@ const Breadcrumb = <T extends BreadcrumbItem>(props: BreadcrumbProps<T>, ref: Re
106117
<BreadcrumbItemContent
107118
className={classNames?.item}
108119
size={size}
120+
onClick={() => handleItemClick?.(item)}
109121
>
110122
{item.leading}
111123

packages/ui/src/components/breadcrumb/types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ export type BreadcrumbProps<T extends BreadcrumbItem> = BreadcrumbRootProps & {
3939
*/
4040
ellipsis?: true | [number, number] | null;
4141
ellipsisIcon?: React.ReactNode;
42+
handleItemClick?: (item: T) => void;
4243
items: T[];
4344
renderEllipsis?: (items: T[]) => React.ReactNode;
4445
renderItem?: (item: T) => React.ReactNode;

0 commit comments

Comments
 (0)