diff --git a/IntegrationTests/ReactContentSizeUpdateTest.js b/IntegrationTests/ReactContentSizeUpdateTest.js index dbb34e7ff0a..8aea15c2b6b 100644 --- a/IntegrationTests/ReactContentSizeUpdateTest.js +++ b/IntegrationTests/ReactContentSizeUpdateTest.js @@ -5,6 +5,7 @@ * LICENSE file in the root directory of this source tree. * * @format + * @flow */ 'use strict'; @@ -13,11 +14,11 @@ const React = require('react'); const createReactClass = require('create-react-class'); const ReactNative = require('react-native'); const RCTNativeAppEventEmitter = require('RCTNativeAppEventEmitter'); -const Subscribable = require('Subscribable'); const {View} = ReactNative; const {TestModule} = ReactNative.NativeModules; +import type EmitterSubscription from 'EmitterSubscription'; const reactViewWidth = 101; const reactViewHeight = 102; @@ -26,12 +27,11 @@ const newReactViewHeight = 202; const ReactContentSizeUpdateTest = createReactClass({ displayName: 'ReactContentSizeUpdateTest', - mixins: [Subscribable.Mixin], _timeoutID: (null: ?TimeoutID), + _subscription: (null: ?EmitterSubscription), UNSAFE_componentWillMount: function() { - this.addListenerOn( - RCTNativeAppEventEmitter, + this._subscription = RCTNativeAppEventEmitter.addListener( 'rootViewDidChangeIntrinsicSize', this.rootViewDidChangeIntrinsicSize, ); @@ -61,6 +61,10 @@ const ReactContentSizeUpdateTest = createReactClass({ if (this._timeoutID != null) { clearTimeout(this._timeoutID); } + + if (this._subscription != null) { + this._subscription.remove(); + } }, rootViewDidChangeIntrinsicSize: function(intrinsicSize) {