Export YellowBox API

Summary:
Allow end users to access the YellowBox API so that warnings can be properly ignored via the API first introduced in a974c140db. Based on that API, you should be able to do the following:

```
import { YellowBox } from 'react-native';
YellowBox.ignoreWarnings(['Warning: ...']);
```

However, if you actually try this today, it results in a broken import error.

Verified using an expo instance. First tried without the YellowBox import, observed a failure to import. Then I added the import statement, and observed no warning on my device.

```
import React from 'react';
import { StyleSheet, Text, View, YellowBox } from 'react-native';

YellowBox.ignoreWarnings(['hey']);

export default class App extends React.Component {
  render() {
    console.warn('hey!');
    return (
      <View style={styles.container}>
        <Text>Open up App.js to start working on your app!</Text>
        <Text>Changes you make will automatically reload.</Text>
        <Text>Shake your phone to open the developer menu.</Text>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    alignItems: 'center',
    justifyContent: 'center',
  },
});
```

[GENERAL] [ENHANCEMENT] [YellowBox] - Export YellowBox API so warnings can be ignored using a non-deprecated API.
Closes https://github.com/facebook/react-native/pull/16709

Differential Revision: D6254819

Pulled By: hramos

fbshipit-source-id: ff92f32e4dedfb01f6902f54fabc62eb64468554
This commit is contained in:
William Li 2017-11-06 17:26:39 -08:00 committed by Facebook Github Bot
parent 2be3ae1ff2
commit 26038f50bb
1 changed files with 1 additions and 0 deletions

View File

@ -103,6 +103,7 @@ const ReactNative = {
get unstable_batchedUpdates() { return require('ReactNative').unstable_batchedUpdates; },
get Vibration() { return require('Vibration'); },
get VibrationIOS() { return require('VibrationIOS'); },
get YellowBox() { return require('YellowBox'); },
// Plugins
get DeviceEventEmitter() { return require('RCTDeviceEventEmitter'); },