@@ -276,9 +276,12 @@ class QueueAnim extends React.Component {
276
276
return ;
277
277
}
278
278
}
279
+ data [ dataKey ] [ 1 ] = 0 ;
279
280
}
280
281
if ( nodeStyle [ dataKey ] && parseFloat ( nodeStyle [ dataKey ] ) ) {
281
282
data [ dataKey ] [ 1 ] = parseFloat ( nodeStyle [ dataKey ] ) ;
283
+ } else {
284
+ data [ dataKey ] [ 1 ] = 0 ;
282
285
}
283
286
} ) ;
284
287
return data ;
@@ -331,15 +334,22 @@ class QueueAnim extends React.Component {
331
334
return ;
332
335
}
333
336
const interval = transformArguments ( this . props . interval , key , i ) [ 1 ] ;
334
- const delay = transformArguments ( this . props . delay , key , i ) [ 1 ] ;
335
- const duration = transformArguments ( this . props . duration , key , i ) [ 1 ] ;
337
+ let delay = transformArguments ( this . props . delay , key , i ) [ 1 ] ;
338
+ let duration = transformArguments ( this . props . duration , key , i ) [ 1 ] ;
336
339
const order = this . props . leaveReverse ? ( this . keysToLeave . length - i - 1 ) : i ;
337
340
velocity ( node , 'stop' ) ;
338
-
341
+ delay = interval * order + delay ;
339
342
const data = this . getInitAnimType ( node , this . getVelocityLeaveConfig ( key , i ) ) ;
340
-
343
+ // 当数据为 [0, 0] 时,,有延时的话会出现跳动。。。
344
+ Object . keys ( data ) . forEach ( dataKey => {
345
+ const item = data [ dataKey ] ;
346
+ if ( Array . isArray ( item ) && item [ 0 ] === 0 && item [ 1 ] === 0 ) {
347
+ delay = 0 ;
348
+ duration = 0 ;
349
+ }
350
+ } ) ;
341
351
velocity ( node , data , {
342
- delay : interval * order + delay ,
352
+ delay,
343
353
duration,
344
354
easing : this . getVelocityEasing ( key , i ) [ 1 ] ,
345
355
begin : this . leaveBegin . bind ( this ) ,
0 commit comments