File tree Expand file tree Collapse file tree 4 files changed +22
-3
lines changed Expand file tree Collapse file tree 4 files changed +22
-3
lines changed Original file line number Diff line number Diff line change 8080 "react" : " >=16.9.0" ,
8181 "react-dom" : " >=16.9.0"
8282 },
83+ "overrides" : {
84+ "cheerio" :" 1.0.0-rc.12"
85+ },
8386 "cnpm" : {
8487 "mode" : " npm"
8588 },
Original file line number Diff line number Diff line change @@ -11,7 +11,7 @@ export interface ItemProps<ItemType> extends React.HTMLAttributes<any> {
1111 item ?: ItemType ;
1212 className ?: string ;
1313 style ?: React . CSSProperties ;
14- renderItem ?: ( item : ItemType ) => React . ReactNode ;
14+ renderItem ?: ( item : ItemType , info : { index : number } ) => React . ReactNode ;
1515 responsive ?: boolean ;
1616 // https://github.com/ant-design/ant-design/issues/35475
1717 /**
@@ -66,7 +66,7 @@ function InternalItem<ItemType>(
6666
6767 // ================================ Render ================================
6868 const childNode =
69- renderItem && item !== UNDEFINED ? renderItem ( item ) : children ;
69+ renderItem && item !== UNDEFINED ? renderItem ( item , { index : order } ) : children ;
7070
7171 let overflowStyle : React . CSSProperties | undefined ;
7272 if ( ! invalidate ) {
Original file line number Diff line number Diff line change @@ -24,7 +24,7 @@ export interface OverflowProps<ItemType> extends React.HTMLAttributes<any> {
2424 itemKey ?: React . Key | ( ( item : ItemType ) => React . Key ) ;
2525 /** Used for `responsive`. It will limit render node to avoid perf issue */
2626 itemWidth ?: number ;
27- renderItem ?: ( item : ItemType ) => React . ReactNode ;
27+ renderItem ?: ( item : ItemType , info : { index : number } ) => React . ReactNode ;
2828 /** @private Do not use in your production. Render raw node that need wrap Item by developer self */
2929 renderRawItem ?: ( item : ItemType , index : number ) => React . ReactElement ;
3030 maxCount ?: number | typeof RESPONSIVE | typeof INVALIDATE ;
Original file line number Diff line number Diff line change @@ -51,6 +51,22 @@ describe('Overflow.Basic', () => {
5151 expect ( wrapper . find ( 'Item' ) . text ( ) ) . toEqual ( 'Bamboo Is Light' ) ;
5252 } ) ;
5353
54+ it ( 'renderItem params have "order"' , ( ) => {
55+ const testData = getData ( 3 ) ;
56+ const wrapper = mount (
57+ < Overflow
58+ data = { testData }
59+ renderItem = { ( item , info ) => {
60+ return `${ item . label } -${ info . index } -test` ;
61+ } }
62+ /> ,
63+ ) ;
64+ const renderedItems = wrapper . find ( '.rc-overflow-item' ) ;
65+ expect ( renderedItems ) . toHaveLength ( testData . length ) ;
66+ renderedItems . forEach ( ( node , index ) => {
67+ expect ( node . text ( ) ) . toBe ( `${ testData [ index ] . label } -${ index } -test` ) ;
68+ } ) ;
69+ } ) ;
5470 describe ( 'renderRest' , ( ) => {
5571 it ( 'function' , ( ) => {
5672 const wrapper = mount (
You can’t perform that action at this time.
0 commit comments