react-native-router-flux:组件中的嵌套路由器

时间:2016-02-21 18:26:04

标签: javascript ios react-native

我正在尝试使用自己的路由器创建独立模块,但到目前为止我无法使其工作。

基本上,我在index.ios.js

中定义了以下内容
<Router hideNavBar={true}>
    <Schema name="default" sceneConfig={Navigator.SceneConfigs.FloatFromRight} />
    <Route name="start" component={Start}></Route>
    <Route name="main" component={Main}></Route>
</Router>

我在组件Start

中有一个路由器
class Start extends Component {
    render() {
        return (
            <Router name="startRouter">
                <Route name="login" component={Login} initial={true} rightTitle="Register" onRight={() => {
                    Actions.register();
                }} />
                <Route name="register" component={Register} title="Register" leftTitle="Login" />
            </Router>
        );
    }
};

导航栏已正确呈现,但当我单击“注册”按钮时,出现错误。

你知道我怎么能做到这一点吗?

感谢。

enter image description here

1 个答案:

答案 0 :(得分:0)

当你提出这个问题时,我不知道语法是什么,但是对于当前版本(3.35.0),你不使用名字,而是键入你的场景。

正确的语法是:

class Start extends Component {
    render() {
        return (
            <Router>
              <Scene key="startRouter">
                <Scene key="login" component={Login} initial={true} rightTitle="Register" onRight={() => {
                    Actions.register();
                }} />
                <Sceme key="register" component={Register} title="Register" leftTitle="Login" />
              </Scene>
            </Router>
        );
    }
}