File tree Expand file tree Collapse file tree 2 files changed +30
-5
lines changed Expand file tree Collapse file tree 2 files changed +30
-5
lines changed Original file line number Diff line number Diff line change @@ -173,9 +173,10 @@ class CSSTransition extends React.Component {
173
173
174
174
addClass ( node , type , phase ) {
175
175
let className = this . getClassNames ( type ) [ `${ phase } ClassName` ] ;
176
+ const { doneClassName } = this . getClassNames ( 'enter' ) ;
176
177
177
- if ( type === 'appear' && phase === 'done' ) {
178
- className += ` ${ this . getClassNames ( 'enter' ) . doneClassName } ` ;
178
+ if ( type === 'appear' && phase === 'done' && doneClassName ) {
179
+ className += ` ${ doneClassName } ` ;
179
180
}
180
181
181
182
// This is for to force a repaint,
@@ -185,8 +186,10 @@ class CSSTransition extends React.Component {
185
186
node && node . scrollTop ;
186
187
}
187
188
188
- this . appliedClasses [ type ] [ phase ] = className
189
- addClass ( node , className )
189
+ if ( className ) {
190
+ this . appliedClasses [ type ] [ phase ] = className
191
+ addClass ( node , className )
192
+ }
190
193
}
191
194
192
195
removeClasses ( node , type ) {
Original file line number Diff line number Diff line change @@ -165,7 +165,29 @@ describe('CSSTransition', () => {
165
165
< div />
166
166
</ CSSTransition >
167
167
)
168
- } )
168
+ } ) ;
169
+
170
+ it ( 'should not add undefined when appearDone is not defined' , done => {
171
+ mount (
172
+ < CSSTransition
173
+ timeout = { 10 }
174
+ classNames = { { appear : 'appear-test' } }
175
+ in = { true }
176
+ appear = { true }
177
+ onEnter = { ( node , isAppearing ) => {
178
+ expect ( isAppearing ) . toEqual ( true ) ;
179
+ expect ( node . className ) . toEqual ( 'appear-test' ) ;
180
+ } }
181
+ onEntered = { ( node , isAppearing ) => {
182
+ expect ( isAppearing ) . toEqual ( true ) ;
183
+ expect ( node . className ) . toEqual ( '' ) ;
184
+ done ( ) ;
185
+ } }
186
+ >
187
+ < div />
188
+ </ CSSTransition >
189
+ ) ;
190
+ } ) ;
169
191
170
192
it ( 'should not be appearing in normal enter mode' , done => {
171
193
let count = 0 ;
You can’t perform that action at this time.
0 commit comments