Значения перезаписывают друг друга в объекте в setState реагировать

Bobby Tables спросил: 14 ноября 2017 в 05:50 в: reactjs

Я пытаюсь предварительно заполнить значения фильтров, которые я сохранил в хранилище избыточных данных, когда пользователь переходит обратно на ту страницу, где он устанавливает фильтры. Однако, когда я собираюсь установить состояние, у меня возникают проблемы с тем, что последнее установленное значение перезаписывает существующее. Вот как я устанавливаю состояние в конструкторе:

this.state = {
  hierarchyTableFilters: {
    hierarchy: null,
    signOffStatus: null,
  },
};

, а затем я собираюсь установить состояние в вызываемой функции с сохраненными данными из redux:

const {userState} = this.props.userInfo;
const previouslySelectedFilter = userState.state.hierarchyTableFilters;if (previouslySelectedFilter) {
  this.setState({
    hierarchyTableFilters: {
      hierarchy: previouslySelectedFilter.hierarchy,
      signOffStatus: previouslySelectedFilter.signOffStatus,
    },
  });

Независимо от того, какое состояние установлено последним, это единственный фильтр, который выглядит предварительно отфильтрованным. Есть ли способ установить состояние для двух разных значений в объекте, или мне нужно по-другому это делать?

0 ответов