2017-12-10 15 views
0

私のコードはhereはネイティブリアクト:「定義されたルートキーがありません」というエラー

に位置しましょう私が言うエラー取得しています:キーにEmployeeListに定義されたルートはありませんが。 「auth」、「main」のいずれかである必要があります。私はrouter.jsをチェックし、このコンポーネントはメインのシーンにネストされているので、問題の内容がわからない。私は従業員を作成したり、従業員を削除したいときにこれを取得しています。私はそれが雇用主のスクリーンに戻ることと関係していると信じています。

enter image description here

答えて

0

反応し、ネイティブ・ルータ・フラックスから、輸入スタックに変更し、ルートのためにそれを行う、認証にも。

スタックの最初の要素に移動すると、そのキーで呼び出されます。つまり、employeeListに移動する場合は、Actions.main()を呼び出す必要があります。

なぜ人々は通常、スクリーンの名前と最初に "_"プレフィックスを付けて親スタックの名前を付けます。 employeeListと_employeeListを持つ最初のシーンでスタックの名前を付けることができます。これを試してみて、結果をお知らせください。

<Router navigationBarStyle={{ backgroundColor: '#2980b9'}} titleStyle={{ color:'#fff', alignSelf:'center' }} > 
     <Stack key="root" hideNavBar={true}> 
      <Stack key='auth'> 
       <Scene key='login' component={LoginForm} title = 'Please login' /> 
      </Stack> 
      <Stack key='employeeList'> 
       <Scene 
        key='_employeeList' 
        component={EmployeeList} 
        title ='Employee' 
        rightTitle="Add" 
        onRight={()=> Actions.createEmployee()} 
        initial 
        rightButtonTextStyle ={{ color:'white',alignSelf:'center',marginRight:5 }} 
       /> 
       <Scene 
        key='createEmployee' 
        component={EmployeeCreate} 
        title='Create Employee'    
       />  
      </Stack> 
     </Stack> 
    </Router> 
関連する問題