@@ -61,11 +61,9 @@ class QueueAnim extends React.Component {
61
61
const nextState = {
62
62
prevProps : props ,
63
63
} ;
64
- const prevChildren = prevProps ? toArrayChildren ( prevProps . children ) . filter ( c => c ) : [ ] ;
65
- const nextChildren = toArrayChildren ( props . children ) . filter ( c => c ) ;
66
- if ( prevProps &&
67
- prevChildren . map ( c => c . key ) . join ( ) !== nextChildren . map ( c => c . key ) . join ( )
64
+ if ( prevProps && ! $self . isInsideRender
68
65
) {
66
+ const nextChildren = toArrayChildren ( props . children ) . filter ( c => c ) ;
69
67
let currentChildren = $self . originalChildren . filter ( item => item ) ;
70
68
if ( children . length ) {
71
69
/**
@@ -253,6 +251,7 @@ class QueueAnim extends React.Component {
253
251
const keysToLeave = [ ...this . keysToLeave ] ;
254
252
keysToEnter . forEach ( this . performEnter ) ;
255
253
keysToLeave . forEach ( this . performLeave ) ;
254
+ this . isInsideRender = false ;
256
255
}
257
256
258
257
componentWillUnmount ( ) {
@@ -469,6 +468,7 @@ class QueueAnim extends React.Component {
469
468
delete this . keysToEnterPaused [ key ] ;
470
469
ticker . clear ( this . placeholderTimeoutIds [ key ] ) ;
471
470
delete this . placeholderTimeoutIds [ key ] ;
471
+ this . isInsideRender = true ;
472
472
this . setState ( { childrenShow } ) ;
473
473
} ;
474
474
@@ -523,6 +523,7 @@ class QueueAnim extends React.Component {
523
523
const needLeave = this . keysToLeave . some ( c => childrenShow [ c ] ) ;
524
524
if ( ! needLeave ) {
525
525
const currentChildren = toArrayChildren ( getChildrenFromProps ( this . props ) ) ;
526
+ this . isInsideRender = true ;
526
527
this . setState ( {
527
528
children : currentChildren ,
528
529
childrenShow,
0 commit comments