2017-10-12 8 views
0

から来ています。私はネイティブアニメーションに反応します。それsouldn'tfunction 'interpolate`は

transform: [{ 
      rotate: this.position.x.interpolate({ 
      inputRange: [-200, 200], 
      outputRange: ['-45deg', '45deg'] // 0 : 150, 0.5 : 75, 1 : 0 
      }), 
     }], 

があること:

transform: [{ 
      rotate: this.position.x._interpolation({ 
      inputRange: [-200, 200], 
      outputRange: ['-45deg', '45deg'] // 0 : 150, 0.5 : 75, 1 : 0 
      }), 
     }], 

P.S.私はconsole.log(this.position.x);とき、それはなぜ我々がやるんx下の関数名は_interpolationであることを示していますthis.position = new Animated.ValueXY();_を持つプロパティをプレフィックス

enter image description here

答えて

1

から来るpositionは通常、外部からアクセスされてはならない内部/プライベートプロパティを示しています。だからあなたの質問への答えは:いいえです。

_interpolationまた、this.position.xにアクセスすると、「内側」のオブジェクトthis.position.xのプロパティ(つまり、プロパティのプロパティ...)のように見えますが、とにかく動作しません。それはおそらくAnimatedValueインスタンスのプロトタイプに定義されています機能interpolate

から来ている

。プロトタイプがJavaScriptでどのように機能するかわからない場合は、YDKJS - this & object prototypesをご覧ください。

+0

AnimatedValueはどこから来ていますか? – farmcommand2

+0

あなたのスクリーンショットは、その値が 'AnimatedValue'のインスタンスであることを示しています。 –

+0

ここに、 'AnimatedValue'のソースコードへのリンクがあります:https://github.com/facebook/react-native/blob/1e8f3b11027fe0a7514b4fc97d0798d3c64bc895/Libraries/Animated/src/nodes/AnimatedValue.js –

関連する問題