Wie kann ich das filter-array der Staat reagieren?

Ich habe um reducer, die viele Staaten.

const initialState = {
 channel: null,
 order: {},
 fetching:true,
 menu: [],
 categories: [],
 subcategories: [],
 currentCategoryId: 1,
 currentSubcategoryId: 5,
 currentMenu: [],
};

Was gefiltert werden soll, ist menu. menu ist array der Staat für die Objekte der menu_item ich habe currentCategoryId und currentSubcategoryId. Was will ich tun mit diesen Staaten ist, dass durch die Verwendung currentCategoryId und currentSubcategoryId filtern menu und setzen gefiltert Staaten zu currentMenu.

case Constants.ORDER_CHANNEL_CONNECTED:
 return
  {...state,currentMenu: action.menu.map((menu) => {
                    if(state.currentCategoryId == menu.category_id){
                        return menu;
                    }
                    else return false;}}

Damit zu tun, dass ich code wie oben. Obwohl es gibt einige gefilterte Wert, es zeigt die gleiche Anzahl von Arrays mit vielen false-Werte. Ich möchte hier andere Ansätze das zu tun..

Wie kann ich dies tun?

Vielen Dank im Voraus.

InformationsquelleAutor D.R | 2017-01-16

Schreibe einen Kommentar