0

RNI と Expo Snack Application で Animated.Value の結果が異なります。

新しい RNI アプリを作成しました。App.js 内で、コンストラクターに新しい Animated.Value を追加し、それを render メソッドで console.log に記録しました。

コンソールの結果は次のとおりです。

Animated Value:  AnimatedValue {_children: Array(0), _value: 0, _startingValue: 0, _offset: 0, _animation: null, …}

Expo Snackで同じことをすると、コンソールの結果は次のようになります。

Animated Value: 0

どうしてこれなの?RNI アプリで値にアクセスするにはどうすればよいですか? このパターンは、react-native のドキュメントでも使用されています。だから私は少し驚いています。私は何かを監督していますか?

App.js のコードは次のとおりです。

import React, { Component } from 'react';
import {
  Platform,
  StyleSheet,
  Text,
  View,
  Animated,
} from 'react-native';

const instructions = Platform.select({
  ios: 'Press Cmd+R to reload,\n' +
    'Cmd+D or shake for dev menu',
  android: 'Double tap R on your keyboard to reload,\n' +
    'Shake or press menu button for dev menu',
});

type Props = {};
export default class App extends Component<Props> {
  constructor(props) {
    super(props);
    this.state = { left: new Animated.Value(0) };
  }

  render() {
    console.log('Animated Value: ', this.state.left);
    return (
      <Animated.View style={styles.container}>
        <Text style={styles.welcome}>
          Welcome to React Native!
        </Text>
        <Text style={styles.instructions}>
          To get started, edit App.js
        </Text>
        <Text style={styles.instructions}>
          {instructions}
        </Text>
      </Animated.View>
    );
  }
}
4

1 に答える 1