Доступ к избыточному хранилищу со значением переменной в имени - PullRequest
2 голосов
/ 08 октября 2019

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

const initialState = {
    test1: {},
    test2: {},
    test3: {},
}

Мне удается подключиться к хранилищу из файла, но у меня возникают проблемы при доступеобъект, который я хочу, тем более, что я знаю только индекс (1, 2, 3).

Я сопоставил состояние с реквизитом:

const mapStateToProps = state => {
  return {
    test1: state.test1,
    test2: state.test2,
    test3: state.test3,
  }
}

И я пытаюсь что-то сделать вместеэти строки:

let index = 2;
let infos = this.props.[`test${index}`]

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

Ответы [ 2 ]

1 голос
/ 08 октября 2019

Ваша ошибка при попытке доступа к объекту состояния с помощью this.props., а затем при попытке оценить переменную, вы можете сделать следующее:

const index = 2;
const infos = this.props[`test${index}`];
0 голосов
/ 08 октября 2019

Попробуйте вот так

let index = 2;
let propname = `test${index}`;
let infos = this.props[propname]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...