Мне нужно запустить действие, чтобы оно могло изменить параметры раскрывающегося списка в React-Redux, но с определенным условием c - PullRequest
0 голосов
/ 08 мая 2020

Итак, сценарий похож на то, что у меня есть таблица, которая содержит детали в отдельных строках, и каждая строка содержит раскрывающееся поле, теперь параметры, входящие в эти поля раскрывающегося списка, поступают из другого API и представляют собой другой объект состояния и строку данные разные.

Теперь, если поле раскрывающегося списка содержит определенное значение c, мне нужно соответствующим образом изменить параметры, например, если что-то находится в «В процессе» и «В процессе», мне нужно отфильтровать значение «Завершено» из раскрывающегося списка, и если значение "Complete" поступает из API, раскрывающееся поле просто показывает его, отфильтровывая другие значения из раскрывающегося списка.

Я пытаюсь достичь этого, запуск действия, чтобы изменить значение состояния раскрывающихся опций на основе значения из данных строки. Но поскольку массив данных строки и объект параметров - это два разных состояния, я не могу установить состояние с помощью редуктора, так как я не могу получить индекс для объединения как данных строки, так и параметров.

Я хотел бы знать, что за подхода, который следует использовать для такого сценария.

Для справки по коду, это мой редуктор, в котором мне нужно обновить состояние.

[constants.SET_OPTIONS_FILTERED]: (state, action) => produce(state, draft => {
        const { rowData, sequence } = action.payload;
        /**
        *
        */ 


        draft.dropDownOptions = 
    }),

rowData - это массив объектов, внутри которого последовательность является ключом объекта.

dropDownOptions является вложенным объектом массивов и имеет параметры в качестве одного из ключей.

options: Array(3)
0: {name: "Complete", value: "COMPLETE"}
1: {name: "In Progress", value: "PROGRESS"}
2: {name: "In Process", value: "PROCESS"}
...