diff --git a/docs/api/navigators/DrawerNavigator.md b/docs/api/navigators/DrawerNavigator.md
index 7dbc895..1f256ad 100644
--- a/docs/api/navigators/DrawerNavigator.md
+++ b/docs/api/navigators/DrawerNavigator.md
@@ -130,6 +130,6 @@ The navigator component created by `DrawerNavigator(...)` takes the following pr
});
```
diff --git a/docs/api/navigators/StackNavigator.md b/docs/api/navigators/StackNavigator.md
index 8f619a5..84065fb 100644
--- a/docs/api/navigators/StackNavigator.md
+++ b/docs/api/navigators/StackNavigator.md
@@ -139,7 +139,7 @@ The navigator component created by `StackNavigator(...)` takes the following pro
});
```
diff --git a/docs/api/navigators/TabNavigator.md b/docs/api/navigators/TabNavigator.md
index 22ab4db..8301a0f 100644
--- a/docs/api/navigators/TabNavigator.md
+++ b/docs/api/navigators/TabNavigator.md
@@ -162,7 +162,7 @@ The navigator component created by `TabNavigator(...)` takes the following props
});
```
diff --git a/src/views/SceneView.js b/src/views/SceneView.js
index fa6c293..eb2a3d2 100644
--- a/src/views/SceneView.js
+++ b/src/views/SceneView.js
@@ -11,12 +11,12 @@ import type {
type Props = {
screenProps?: {};
+ hideScreenPropsWarning?: boolean;
navigation: NavigationScreenProp;
component: ReactClass<*>;
};
export default class SceneView extends PureComponent {
-
static childContextTypes = {
navigation: React.PropTypes.object.isRequired,
};
@@ -29,8 +29,30 @@ export default class SceneView extends PureComponent {
};
}
+ componentWillMount() {
+ if (this.props.screenProps !== undefined && !this.props.hideScreenPropsWarning) {
+ console.warn(
+ 'Behaviour of screenProps has changed from initial beta. ' +
+ 'Components will now receive it as `this.props.screenProps` instead.\n' +
+ 'Pass `hideScreenPropsWarning` to hide this warning.'
+ );
+ }
+ }
+
render() {
- const { screenProps, navigation, component: Component } = this.props;
- return ;
+ const {
+ hideScreenPropsWarning,
+ screenProps,
+ navigation,
+ component: Component,
+ } = this.props;
+
+ return (
+
+ );
}
}