remove createReactClass from TimerExample.js (#21623)

Summary:
Relates to #21581
Removed `createdReactClass` from `TimerExample.js`.
Pull Request resolved: https://github.com/facebook/react-native/pull/21623

Reviewed By: hramos

Differential Revision: D10341474

Pulled By: RSNara

fbshipit-source-id: b4bf6e07fcf0355c89709809fe9a69e447b44e2f
This commit is contained in:
Rafael Nunes G. da Silveira 2018-10-12 13:24:57 -07:00 committed by Facebook Github Bot
parent 7541655398
commit c96c93ef4a

View File

@ -11,7 +11,6 @@
'use strict'; 'use strict';
var React = require('react'); var React = require('react');
var createReactClass = require('create-react-class');
var ReactNative = require('react-native'); var ReactNative = require('react-native');
var {AlertIOS, Platform, ToastAndroid, Text, View} = ReactNative; var {AlertIOS, Platform, ToastAndroid, Text, View} = ReactNative;
var RNTesterButton = require('./RNTesterButton'); var RNTesterButton = require('./RNTesterButton');
@ -117,26 +116,29 @@ class RequestIdleCallbackTester extends React.Component<{}, $FlowFixMeState> {
}; };
} }
var TimerTester = createReactClass({ type TimerTesterProps = $ReadOnly<{|
displayName: 'TimerTester', dt?: number,
type: string,
|}>;
_ii: 0, class TimerTester extends React.Component<TimerTesterProps> {
_iters: 0, _ii = 0;
_start: 0, _iters = 0;
_timerId: (null: ?TimeoutID), _start = 0;
_rafId: (null: ?AnimationFrameID), _timerId: ?TimeoutID = null;
_intervalId: (null: ?IntervalID), _rafId: ?AnimationFrameID = null;
_immediateId: (null: ?Object), _intervalId: ?IntervalID = null;
_timerFn: (null: ?() => any), _immediateId: ?Object = null;
_timerFn: ?() => any = null;
render: function() { render() {
var args = 'fn' + (this.props.dt !== undefined ? ', ' + this.props.dt : ''); var args = 'fn' + (this.props.dt !== undefined ? ', ' + this.props.dt : '');
return ( return (
<RNTesterButton onPress={this._run}> <RNTesterButton onPress={this._run}>
Measure: {this.props.type}({args}) - {this._ii || 0} Measure: {this.props.type}({args}) - {this._ii || 0}
</RNTesterButton> </RNTesterButton>
); );
}, }
componentWillUnmount() { componentWillUnmount() {
if (this._timerId != null) { if (this._timerId != null) {
@ -154,18 +156,18 @@ var TimerTester = createReactClass({
if (this._intervalId != null) { if (this._intervalId != null) {
clearInterval(this._intervalId); clearInterval(this._intervalId);
} }
}, }
_run: function() { _run = () => {
if (!this._start) { if (!this._start) {
var d = new Date(); var d = new Date();
this._start = d.getTime(); this._start = d.getTime();
this._iters = 100; this._iters = 100;
this._ii = 0; this._ii = 0;
if (this.props.type === 'setTimeout') { if (this.props.type === 'setTimeout') {
if (this.props.dt < 1) { if (this.props.dt !== undefined && this.props.dt < 1) {
this._iters = 5000; this._iters = 5000;
} else if (this.props.dt > 20) { } else if (this.props.dt !== undefined && this.props.dt > 20) {
this._iters = 10; this._iters = 10;
} }
this._timerFn = () => { this._timerFn = () => {
@ -220,9 +222,9 @@ var TimerTester = createReactClass({
if (this._timerFn) { if (this._timerFn) {
this._timerId = this._timerFn(); this._timerId = this._timerFn();
} }
}, };
clear: function() { clear = () => {
if (this._intervalId != null) { if (this._intervalId != null) {
clearInterval(this._intervalId); clearInterval(this._intervalId);
// Configure things so we can do a final run to update UI and reset state. // Configure things so we can do a final run to update UI and reset state.
@ -230,8 +232,8 @@ var TimerTester = createReactClass({
this._iters = this._ii; this._iters = this._ii;
this._run(); this._run();
} }
}, };
}); }
exports.framework = 'React'; exports.framework = 'React';
exports.title = 'Timers, TimerMixin'; exports.title = 'Timers, TimerMixin';