没有为密钥验证定义路由

问题描述 投票:0回答:1

我正在使用react-native-router-flux进行导航但出现此错误的应用程序中工作>

enter image description here

这是我的路由器

<Router navTransparent>
            <Lightbox>
                <Scene key="root" tintColor="#fff" style={{position: 'absolute'}} hideNavBar>
                    <Scene key="redirect" component={EnsureAuthentication}/>
                    <Scene key="auth" navBar={CustomNavBar}>
                        <Scene key="loginSignUp" component={Login} hideNavBar/>
                        <Scene key="login" component={LoginForm} title={I18n.t('loginTitle')} />
                        <Scene key="signUp" component={SignUpForm} title={I18n.t('signUpTitle')}/>
                        <Scene key="googleLogin" component={GoogleLogin}/>
                    </Scene>
                    <Drawer hideNavBar key="app" contentComponent={DrawerContent} drawerWidth={300} drawerOpenRoute="DrawerOpen" drawerCloseRoute="DrawerClose" drawerToggleRoute="DrawerToggle">
                        <Scene key="main" navBar={CustomNavBar}>
                            <Scene key="MapSearch" component={MapSearch}/>
                            <Scene key="ScanQr" hideNavBar component={ScanQr} />
                            <Scene key="searchList" hideNavBar component={SearchList}/>
                            <Scene key="editUserProfile" component={EditUserProfile} title={I18n.t('update')} />
                            <Scene key="stallDetails" hideNavBar component={StallDetails}/>
                            <Scene key="customise" hideNavBar component={Customise}/>
                            <Scene key="cart" hideNavBar component={Cart}/>
                            <Scene key="favourites" hideNavBar component={Favourites}/>
                        </Scene>
                    </Drawer>
                </Scene>
                <Scene key="overlay"/>
                <Scene key="orderOverlay" hideNavBar component={OrderOverlay}/>
                <Scene key="confirmOverlay" hideNavBar component={ConfirmOverlay}/>
                <Scene key="forgotPasswordOverlay" hideNavBar component={ForgotPasswordOverlay}/>
                <Scene key="forgotPwdSuccessOverlay" hideNavBar component={ForgotPwdSuccessOverlay}/>
            </Lightbox>
        </Router>

我正在打电话给Actions.reset('auths');

[如果我调用Actions.auths()而不是Actions.reset('auths');并在我要调用此方法的同一个文件中进行一些更改,则应用程序会重新加载一切正常,这是另一个奇怪的行为。

我正在使用我使用react-native-router-flux进行导航但遇到此错误的应用程序,这是我的路由器...

javascript reactjs react-native react-native-router-flux
1个回答
0
投票
该错误是由错字引起的。 keyAction值未完全按照Scene中的声明进行调用。调用Action.auth()应该可以正常工作并解决错误。

我可以看到您正在尝试重置Scene。您也可以通过在reset中声明Router作为道具来做到这一点。这样,每次导航到Scene都会触发reset

<Scene key="auth" navBar={CustomNavBar} type={ActionConst.RESET}>

如果您尝试为认证过程流设置场景的堆栈,则可以尝试设置一个具有initial属性的堆栈。我在这里添加了一个代码段进行测试:
© www.soinside.com 2019 - 2024. All rights reserved.