2016-05-02 21 views
0

ナビゲーションスタックに要素をプッシュする際に問題があります。私はすでに前にプッシュされた項目を押すと、私はnavigationstackは一意である必要があることを示す例外を取得ナビゲーション実験:ユニークなアイテムのみをスタック

export default function navigationReducer(state = initialState, action = {}) { 
    switch (action.type) { 
    case NAV_PUSH: 
     if (state.navigationState.children[state.navigationState.index].key === (action.state && action.state.key)) 
     return state; 

     return {...state,...{ 
     navigationState: StateUtils.push(state.navigationState, action.state) 
     } 
    }; 

    case NAV_POP: 
     if (state.navigationState.index === 0 || state.navigationState.children.length === 1) 
     return state.navigationState; 
     return {...state,...{ 
     navigationState: StateUtils.pop(state.navigationState) 
     } 
    }; 

    case NAV_JUMP_TO_KEY: 
     return {...state,...{ 
     navigationState: StateUtils.jumpTo(state.navigationState, action.key) 
     } 
    }; 

    case NAV_JUMP_TO_INDEX: 
     return {...state,...{ 
     navigationState: StateUtils.jumpToIndex(state.navigationState, action.index) 
     } 
    }; 

    case NAV_RESET: 
     return {...state,...{ 
     navigationState: StateUtils.reset(state.navigationState, [action.state],0) 
     } 
    }; 

    default: 
     return state 
    } 
} 

:私は私自身の減速を使用しています。

Each child in an array or iterator should have a unique "key" prop. Check the render method of `NavigationAnimatedView` 

ナビゲーションライブラリでは、この要件は保証されません。 ナビゲーションスタックにはユニークなアイテムしか含めるべきではないと思います。ライブラリがこれを処理していると思います。手動でチェックする必要はありません。

答えて

関連する問題