|
@@ -22,6 +22,7 @@ class SecondTabScreen extends Component {
|
22
|
22
|
constructor(props) {
|
23
|
23
|
super(props);
|
24
|
24
|
this.buttonsCounter = 0;
|
|
25
|
+ this.props.navigator.setOnNavigatorEvent(this.onNavigatorEvent.bind(this));
|
25
|
26
|
}
|
26
|
27
|
|
27
|
28
|
render() {
|
|
@@ -80,6 +81,36 @@ class SecondTabScreen extends Component {
|
80
|
81
|
}
|
81
|
82
|
|
82
|
83
|
onNavigatorEvent(event) {
|
|
84
|
+ if (event.type == 'DeepLink') {
|
|
85
|
+ console.log('SecondTabScreen', 'onNavigatorEvent ' + event.link);
|
|
86
|
+ const parts = event.link.split('/');
|
|
87
|
+ if (parts[0] == 'tab2' && parts[1] == 'pushScreen') {
|
|
88
|
+ this.props.navigator.toggleDrawer({
|
|
89
|
+ side: 'left',
|
|
90
|
+ animated: true,
|
|
91
|
+ to: 'closed'
|
|
92
|
+ });
|
|
93
|
+
|
|
94
|
+ this.props.navigator.push({
|
|
95
|
+ title: "Pushed from SideMenu",
|
|
96
|
+ screen: parts[2],
|
|
97
|
+ passProps: {
|
|
98
|
+ str: 'This is a prop passed in \'navigator.push()\'!',
|
|
99
|
+ obj: {
|
|
100
|
+ str: 'This is a prop passed in an object!',
|
|
101
|
+ arr: [
|
|
102
|
+ {
|
|
103
|
+ str: 'This is a prop in an object in an array in an object!'
|
|
104
|
+ }
|
|
105
|
+ ]
|
|
106
|
+ },
|
|
107
|
+ num: 1234
|
|
108
|
+ }
|
|
109
|
+ });
|
|
110
|
+ }
|
|
111
|
+ return;
|
|
112
|
+ }
|
|
113
|
+
|
83
|
114
|
switch (event.id) {
|
84
|
115
|
case 'left':
|
85
|
116
|
Alert.alert('NavBar', 'Left button pressed');
|
|
@@ -88,6 +119,7 @@ class SecondTabScreen extends Component {
|
88
|
119
|
Alert.alert('NavBar', 'Right button pressed');
|
89
|
120
|
break;
|
90
|
121
|
}
|
|
122
|
+ console.log('ListScreen', 'Unhandled event ' + event.id);
|
91
|
123
|
}
|
92
|
124
|
}
|
93
|
125
|
|