ここではネイティブの初心者が反応します。 React-Native in TypescriptのTabNavigationでStackNavigationを動作させようとしています。私のアプリには3つの画面があります。 FirstScreen
とSecondScreen
がタブとして表示され、FirstScreen
の「ここをクリック」ボタンをクリックすると、PopScreen
が表示されます。 this.props.navigation.navigate("Pop")
コールオンボタンのクリックはエラーなしで失敗したようですが、false
を返します。反応ナビにStackNavigatorで追加された画面が表示されない
import React from "react";
import { View, Text, Button } from "react-native";
import { StackNavigator } from 'react-navigation';
import { TabNavigator, NavigationStackScreenOptions } from 'react-navigation';
class FirstScreen extends React.Component<any, any> {
render() {
return (
<View>
<Text>My First Tab Screen!!!</Text>
<Button
title="Click Here"
onPress={() => this.props.navigation.navigate("Pop"); } />
</View>
);
}
}
class SecondScreen extends React.Component<any, any> {
render() {
return (
<Text>My Second Tab Screen</Text>
);
}
}
class PopScreen extends React.Component<any, any> {
render() {
return (
<View>
<Text>Content in pop up.</Text>
</View>
);
}
}
const TabOptions = TabNavigator({
MyFirst: { screen : FirstScreen },
MySecond: { screen : SecondScreen }
});
class TabOptionsScreen extends React.Component<any, any>
{
static navigationOptions : NavigationStackScreenOptions = {
header: null
};
render() {
return (<TabOptions />)
}
}
export const App = StackNavigator ({
Home : { screen: TabOptionsScreen },
Pop: { screen: PopScreen }
})
this.props.navigation
オブジェクトがnullまたはFirstScreen
クラスで未定義ではないですが、何とかそれはStackNavigatorに渡されたオプションを認識しません:
は、ここに私のコードです。どうすればnavigate
メソッドをTabNavigatorの子画面で動作させることができますか?