File tree Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Expand file tree Collapse file tree 1 file changed +10
-1
lines changed Original file line number Diff line number Diff line change @@ -46,6 +46,8 @@ class DOMWrap extends React.Component<DOMWrapProps, DOMWrapState> {
4646 // cache item of the original items (so we can track the size and order)
4747 menuItemSizes : number [ ] = [ ] ;
4848
49+ cancelFrameId : number = null ;
50+
4951 state : DOMWrapState = {
5052 lastVisibleIndex : undefined ,
5153 } ;
@@ -58,7 +60,13 @@ class DOMWrap extends React.Component<DOMWrapProps, DOMWrapState> {
5860 return ;
5961 }
6062 this . resizeObserver = new ResizeObserver ( entries => {
61- entries . forEach ( this . setChildrenWidthAndResize ) ;
63+ entries . forEach ( ( ) => {
64+ const { cancelFrameId } = this ;
65+ cancelAnimationFrame ( cancelFrameId ) ;
66+ this . cancelFrameId = requestAnimationFrame (
67+ this . setChildrenWidthAndResize ,
68+ ) ;
69+ } ) ;
6270 } ) ;
6371
6472 [ ] . slice
@@ -95,6 +103,7 @@ class DOMWrap extends React.Component<DOMWrapProps, DOMWrapState> {
95103 if ( this . mutationObserver ) {
96104 this . mutationObserver . disconnect ( ) ;
97105 }
106+ cancelAnimationFrame ( this . cancelFrameId ) ;
98107 }
99108
100109 // get all valid menuItem nodes
You can’t perform that action at this time.
0 commit comments