导航器回复原生

时间:2016-11-16 13:25:49

标签: reactjs native back

我希望当我点击后面(在电话按钮 - android) 它将回到预览场景 这是我的代码:

    class students extends Component {
    constructor(props) {
        super(props);
        this.state = {
            value: false,
            userstatus: false // false - guest, true - user
        };
        I18nManager.forceRTL(true)
    }

    componentDidMount() {
        var self = this;
        setTimeout(() => {
            self.setState({
                value: true
            });
        }, 3000);
    }

    _renderScene(route, navigator) {
        if (route.id === 1) {
            return <Userarea navigator={navigator} userstatus={this.state.userstatus} />
        } else if (route.id === 2) {
            return <Main navigator={navigator} userstatus={this.state.userstatus} />
        } else if (route.id === 3) {
            return <Register navigator={navigator} userstatus={this.state.userstatus} />
        }
    }

    _configureScene(route) {
        return CustomSceneConfig;
    }

    render() {
        if (!this.state.value){
            return <Loading/>;
        } else {
            return (
                <Navigator
                    initialRoute={{id: 1, }}
                    renderScene={this._renderScene.bind(this)}
                    configureScene={this._configureScene} />
            );
        }
    }
}

我尝试使用&#34; onBack&#34;但它没有帮助我...... 现在,当我点击我的android退出应用程序... 我想要回到Android和iPhone的按钮

TNX

1 个答案:

答案 0 :(得分:1)

这一切都取决于你添加导航页面的方式,如果你使用了navigator.push(),你可以使用navigator.pop()或navigator.goBack()(它将保留当前页面。

https://facebook.github.io/react-native/docs/navigator.html#pop

如果这让人感到困惑,并且您熟悉来自网络的反应路由器 这非常相似,并且不需要对flux / redux有深入的了解

https://github.com/aksonov/react-native-router-flux