Skip to content

Commit 5024b87

Browse files
author
Ben Grynhaus
committed
Simplify & fix BreadCrumb component API
1 parent e4ed4ae commit 5024b87

File tree

1 file changed

+5
-15
lines changed

1 file changed

+5
-15
lines changed

libs/fabric/src/components/breadcrumb/breadcrumb.component.ts

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import { IBreadcrumbItem, IBreadcrumbProps } from 'office-ui-fabric-react/lib/Br
2626
[overflowIndex]="overflowIndex"
2727
[styles]="styles"
2828
[theme]="theme"
29-
[RenderItem]="item && onRenderItem"
29+
[RenderItem]="renderItem && onRenderItem"
3030
[ReduceData]="onReduceData"
3131
>
3232
</Breadcrumb>
@@ -48,26 +48,16 @@ export class FabBreadcrumbComponent extends ReactWrapperComponent<IBreadcrumbPro
4848
@Input() styles?: IBreadcrumbProps['styles'];
4949
@Input() theme?: IBreadcrumbProps['theme'];
5050

51-
@Input() item?: InputRendererOptions<IBreadcrumbItem>;
52-
@Input() onReduceData?: IBreadcrumbProps['onReduceData'];
51+
@Input() renderItem?: InputRendererOptions<IBreadcrumbItem>;
52+
@Input('reduceData') onReduceData?: IBreadcrumbProps['onReduceData'];
5353

54-
private _renderItem: JsxRenderFunc<IBreadcrumbItem>;
54+
onRenderItem: (props?: IBreadcrumbItem, defaultRender?: JsxRenderFunc<IBreadcrumbItem>) => JSX.Element;
5555

5656
constructor(elementRef: ElementRef, changeDetectorRef: ChangeDetectorRef) {
5757
super(elementRef, changeDetectorRef);
58-
59-
this.onRenderItem = this.onRenderItem.bind(this);
6058
}
6159

6260
ngOnInit() {
63-
this._renderItem = this.createInputJsxRenderer(this.item);
64-
}
65-
66-
onRenderItem(props?: IBreadcrumbItem, defaultRender?: JsxRenderFunc<IBreadcrumbItem>): JSX.Element {
67-
if (!this.item) {
68-
return typeof defaultRender === 'function' ? defaultRender(props) : null;
69-
}
70-
71-
return this._renderItem(props);
61+
this.onRenderItem = this.createRenderPropHandler(this.renderItem);
7262
}
7363
}

0 commit comments

Comments
 (0)