原生如何跳转到RN某一个指定的界面



  • react-native原生模块ViewController中 如何push到RN上指定的一个页面



  • console.log(this.props.params.page)
            const Navigator = StackNavigator(
                {
                    splash: {screen: Splash},
                    home: {screen: Home},
                    changeName: {screen: ChangeName},
                    activity: {screen: Activity}
                },
                {
                    // initialRouteName: params.page,
                    initialRouteName: 'activity',
                    headerMode: 'screen',
                    navigationOptions: {
                        headerStyle: {
                            backgroundColor: '#3e9ce9'
                        },
                        headerTitleStyle: {
                            color: '#fff',
                            fontSize: 20
                        },
                        headerTintColor: '#fff'
                    },
                    transitionConfig: () => ({
                        screenInterpolator: CardStackStyleInterpolator.forHorizontal,//设置跳转动画左右滑动
                    })
    
                }
            );
    

    不谢



  • 通过监听进行发送数据
    a.通过使用DeviceEventManagerModule进行触发事件,并述明监听名称和参数
    eg: rnContext.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class).emit("pingPayComplete",result);
    b.在js中通过DeviceEventEmitter进行监听事件
    eg:
    this.subscription=DeviceEventEmitter.addListener("pingPayComplete",(result)=>{
    this.setState({...this.state,payResult:result},()=>{
    ToastAndroid.show(this.state.payResult,ToastAndroid.SHORT);
    });
    })
    在接受到监听事件以后,使用navigation跳转到制定界面


登录后回复