Как использовать переменную в распространении при обновлении значения вложенного объекта в редукторе? - PullRequest
0 голосов
/ 26 июня 2018

Мой вопрос всего на шаг впереди вопроса здесь

Я хочу знать, есть ли способ использовать переменные вместо «Профессионал» (что является ключевым в справочном вопросе), потому что моя модель имеет следующий тип:

const list = {
  categories: {
    1: {
      name: "Golf",
      active: false
    },
    2: {
      name: "Ultimate Frisbee",
      active: false
    }
  }
}

Я хочу получить 1 и 2, т. Е. Идентификаторы в коде ниже:

return {
  ...state,
  categories: {
    ...state.categories,
    <dynamic_Id>: {
      name:"xyz"
    }
  }
}

Моя главная цель - обновить свойство name выбранного идентификатора. Пожалуйста, дайте мне знать, если есть какое-либо решение для этого. Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 27 июня 2018

Итак, наконец, мое решение заключается в следующем:

let idProp = 1;
return {
      ...state,
      categories: {
        ...state.categories,
        [idProp]: {
        ...state.categories[idProp],
          name:"xyz"
        }
      }
    }
0 голосов
/ 27 июня 2018

Я думаю, это то, что вы после

  return {
      ...state,
      categories: {
        ...state.categories,
        [idProp]: {
        ...state.categories[idProp],
          name:"xyz"
        }
      }
    }
...