我想以initialProps的形式从本地android发送数据以作出反应,但问题是在react-navigation中使用StackNavigator。
这是解决方案(从这里得到帮助),它将在react-navigation的早期版本中工作,该版本用于将initialProps从本机发送到第一幕的react本机:
export default class AwesomeProject extends Component {
constructor(props){
super(props)
console.warn(this.props.movie_id);
}
render() {
return <RootStack screenProps={this.props.movie_id} />;
}
}
const RootStack = createStackNavigator(
{
home: {screen: Details},
genre: {screen: Genre},
},
{
initialRouteName: 'home',
}
);,但从react-navigation-3开始,您必须直接设置app容器。
有人能告诉我如何使用createAppContainer()实现这个目标吗?
发布于 2019-02-15 13:44:53
作为一个样本,来自我自己的一个项目:
import {
createSwitchNavigator,
createAppContainer
} from 'react-navigation';
const SwitchNavigator = createSwitchNavigator(
{
ScreenOne,
ScreenTwo,
ScreenThree
}
);
const AppContainer = createAppContainer(SwitchNavigator);
class App extends Component {
render() {
return (<AppContainer />);
}
}发布于 2019-02-15 14:14:38
多亏了@David Gevorgyan,我成功地将initialProps从本地android发送到了StackNavigator的第一个场景:
export default class AwesomeProject extends Component {
constructor(props){
super(props)
}
render() {
return <RootStack screenProps={this.props.movie_id} />;
}
}
const RootStack = createAppContainer(StackNavigator)
const StackNavigator = createStackNavigator(
{
home: {screen: Details},
genre: {screen: Genre},
},
{
initialRouteName: 'home',
}
);https://stackoverflow.com/questions/54710312
复制相似问题