diff --git a/js/ProgressBarAndroidExample.android.js b/js/ProgressBarAndroidExample.android.js index c806a4c6c33..9c45fc54c40 100644 --- a/js/ProgressBarAndroidExample.android.js +++ b/js/ProgressBarAndroidExample.android.js @@ -12,37 +12,49 @@ const ProgressBar = require('ProgressBarAndroid'); const React = require('React'); -const createReactClass = require('create-react-class'); const RNTesterBlock = require('RNTesterBlock'); const RNTesterPage = require('RNTesterPage'); -const MovingBar = createReactClass({ - displayName: 'MovingBar', - _intervalID: (null: ?IntervalID), +import type {ProgressBarAndroidProps} from 'ProgressBarAndroid'; - getInitialState: function() { - return { - progress: 0, - }; - }, +type MovingBarProps = $ReadOnly<{| + ...$Diff< + ProgressBarAndroidProps, + { + progress: ?number, + }, + >, + indeterminate: false, +|}>; - componentDidMount: function() { +type MovingBarState = { + progress: number, +}; + +class MovingBar extends React.Component { + _intervalID: ?IntervalID = null; + + state = { + progress: 0, + }; + + componentDidMount() { this._intervalID = setInterval(() => { const progress = (this.state.progress + 0.02) % 1; - this.setState({progress: progress}); + this.setState({progress}); }, 50); - }, + } - componentWillUnmount: function() { + componentWillUnmount() { if (this._intervalID != null) { clearInterval(this._intervalID); } - }, + } - render: function() { + render() { return ; - }, -}); + } +} class ProgressBarAndroidExample extends React.Component<{}> { static title = '';