@@ -53,14 +53,14 @@ export class MenuItem extends React.Component {
5353 const { active, parentMenu, eventKey } = this . props ;
5454 // 在 parentMenu 上层保存滚动状态,避免重复的 MenuItem key 导致滚动跳动
5555 // https://github.com/ant-design/ant-design/issues/16181
56- if ( ! prevProps . active && active && ! parentMenu [ `scrolled-${ eventKey } ` ] ) {
56+ if ( ! prevProps . active && active && ( ! parentMenu && ! parentMenu [ `scrolled-${ eventKey } ` ] ) ) {
5757 if ( this . node ) {
5858 scrollIntoView ( this . node , ReactDOM . findDOMNode ( parentMenu ) , {
5959 onlyScrollIfNeeded : true ,
6060 } ) ;
6161 parentMenu [ `scrolled-${ eventKey } ` ] = true ;
6262 }
63- } else if ( parentMenu [ `scrolled-${ eventKey } ` ] ) {
63+ } else if ( parentMenu && parentMenu [ `scrolled-${ eventKey } ` ] ) {
6464 delete parentMenu [ `scrolled-${ eventKey } ` ] ;
6565 }
6666 this . callRef ( ) ;
@@ -73,15 +73,15 @@ export class MenuItem extends React.Component {
7373 }
7474 }
7575
76- onKeyDown = ( e ) => {
76+ onKeyDown = e => {
7777 const keyCode = e . keyCode ;
7878 if ( keyCode === KeyCode . ENTER ) {
7979 this . onClick ( e ) ;
8080 return true ;
8181 }
8282 } ;
8383
84- onMouseLeave = ( e ) => {
84+ onMouseLeave = e => {
8585 const { eventKey, onItemHover, onMouseLeave } = this . props ;
8686 onItemHover ( {
8787 key : eventKey ,
@@ -93,7 +93,7 @@ export class MenuItem extends React.Component {
9393 } ) ;
9494 } ;
9595
96- onMouseEnter = ( e ) => {
96+ onMouseEnter = e => {
9797 const { eventKey, onItemHover, onMouseEnter } = this . props ;
9898 onItemHover ( {
9999 key : eventKey ,
@@ -105,7 +105,7 @@ export class MenuItem extends React.Component {
105105 } ) ;
106106 } ;
107107
108- onClick = ( e ) => {
108+ onClick = e => {
109109 const { eventKey, multiple, onClick, onSelect, onDeselect, isSelected } = this . props ;
110110 const info = {
111111 key : eventKey ,
@@ -141,9 +141,9 @@ export class MenuItem extends React.Component {
141141 return `${ this . getPrefixCls ( ) } -disabled` ;
142142 }
143143
144- saveNode = ( node ) => {
144+ saveNode = node => {
145145 this . node = node ;
146- }
146+ } ;
147147
148148 callRef ( ) {
149149 if ( this . props . manualRef ) {
@@ -200,13 +200,7 @@ export class MenuItem extends React.Component {
200200 icon = React . createElement ( this . props . itemIcon , this . props ) ;
201201 }
202202 return (
203- < li
204- { ...props }
205- { ...attrs }
206- { ...mouseEvent }
207- style = { style }
208- ref = { this . saveNode }
209- >
203+ < li { ...props } { ...attrs } { ...mouseEvent } style = { style } ref = { this . saveNode } >
210204 { props . children }
211205 { icon }
212206 </ li >
0 commit comments