From c96c93ef4a43cb9f4d4eee30b72e230ead0f7109 Mon Sep 17 00:00:00 2001 From: "Rafael Nunes G. da Silveira" Date: Fri, 12 Oct 2018 13:24:57 -0700 Subject: [PATCH] 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 --- RNTester/js/TimerExample.js | 44 +++++++++++++++++++------------------ 1 file changed, 23 insertions(+), 21 deletions(-) diff --git a/RNTester/js/TimerExample.js b/RNTester/js/TimerExample.js index f3e7ed6fb..d7aef4a34 100644 --- a/RNTester/js/TimerExample.js +++ b/RNTester/js/TimerExample.js @@ -11,7 +11,6 @@ 'use strict'; var React = require('react'); -var createReactClass = require('create-react-class'); var ReactNative = require('react-native'); var {AlertIOS, Platform, ToastAndroid, Text, View} = ReactNative; var RNTesterButton = require('./RNTesterButton'); @@ -117,26 +116,29 @@ class RequestIdleCallbackTester extends React.Component<{}, $FlowFixMeState> { }; } -var TimerTester = createReactClass({ - displayName: 'TimerTester', +type TimerTesterProps = $ReadOnly<{| + dt?: number, + type: string, +|}>; - _ii: 0, - _iters: 0, - _start: 0, - _timerId: (null: ?TimeoutID), - _rafId: (null: ?AnimationFrameID), - _intervalId: (null: ?IntervalID), - _immediateId: (null: ?Object), - _timerFn: (null: ?() => any), +class TimerTester extends React.Component { + _ii = 0; + _iters = 0; + _start = 0; + _timerId: ?TimeoutID = null; + _rafId: ?AnimationFrameID = null; + _intervalId: ?IntervalID = null; + _immediateId: ?Object = null; + _timerFn: ?() => any = null; - render: function() { + render() { var args = 'fn' + (this.props.dt !== undefined ? ', ' + this.props.dt : ''); return ( Measure: {this.props.type}({args}) - {this._ii || 0} ); - }, + } componentWillUnmount() { if (this._timerId != null) { @@ -154,18 +156,18 @@ var TimerTester = createReactClass({ if (this._intervalId != null) { clearInterval(this._intervalId); } - }, + } - _run: function() { + _run = () => { if (!this._start) { var d = new Date(); this._start = d.getTime(); this._iters = 100; this._ii = 0; if (this.props.type === 'setTimeout') { - if (this.props.dt < 1) { + if (this.props.dt !== undefined && this.props.dt < 1) { this._iters = 5000; - } else if (this.props.dt > 20) { + } else if (this.props.dt !== undefined && this.props.dt > 20) { this._iters = 10; } this._timerFn = () => { @@ -220,9 +222,9 @@ var TimerTester = createReactClass({ if (this._timerFn) { this._timerId = this._timerFn(); } - }, + }; - clear: function() { + clear = () => { if (this._intervalId != null) { clearInterval(this._intervalId); // 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._run(); } - }, -}); + }; +} exports.framework = 'React'; exports.title = 'Timers, TimerMixin';