@@ -9,6 +9,7 @@ import staticMethods from './decorators/staticMethods'
9
9
import windowListener from './decorators/windowListener'
10
10
import customEvent from './decorators/customEvent'
11
11
import isCapture from './decorators/isCapture'
12
+ import getEffect from './decorators/getEffect'
12
13
13
14
/* Utils */
14
15
import getPosition from './utils/getPosition'
@@ -18,7 +19,7 @@ import { parseAria } from './utils/aria'
18
19
/* CSS */
19
20
import cssStyle from './style'
20
21
21
- @staticMethods @windowListener @customEvent @isCapture
22
+ @staticMethods @windowListener @customEvent @isCapture @ getEffect
22
23
class ReactTooltip extends Component {
23
24
24
25
static propTypes = {
@@ -161,6 +162,7 @@ class ReactTooltip extends Component {
161
162
162
163
targetArray . forEach ( target => {
163
164
const isCaptureMode = this . isCapture ( target )
165
+ const effect = this . getEffect ( target )
164
166
if ( target . getAttribute ( 'currentItem' ) === null ) {
165
167
target . setAttribute ( 'currentItem' , 'false' )
166
168
}
@@ -172,7 +174,7 @@ class ReactTooltip extends Component {
172
174
}
173
175
174
176
target . addEventListener ( 'mouseenter' , this . showTooltip , isCaptureMode )
175
- if ( this . state . effect === 'float' ) {
177
+ if ( effect === 'float' ) {
176
178
target . addEventListener ( 'mousemove' , this . updateTooltip , isCaptureMode )
177
179
}
178
180
target . addEventListener ( 'mouseleave' , this . hideTooltip , isCaptureMode )
@@ -258,7 +260,7 @@ class ReactTooltip extends Component {
258
260
isEmptyTip,
259
261
place : e . currentTarget . getAttribute ( 'data-place' ) || this . props . place || 'top' ,
260
262
type : e . currentTarget . getAttribute ( 'data-type' ) || this . props . type || 'dark' ,
261
- effect : switchToSolid && 'solid' || e . currentTarget . getAttribute ( 'data-effect' ) || this . props . effect || 'float' ,
263
+ effect : switchToSolid && 'solid' || this . getEffect ( e . currentTarget ) ,
262
264
offset : e . currentTarget . getAttribute ( 'data-offset' ) || this . props . offset || { } ,
263
265
html : e . currentTarget . getAttribute ( 'data-html' )
264
266
? e . currentTarget . getAttribute ( 'data-html' ) === 'true'
0 commit comments