Является ли добавление свойств с сохранением состояния к объектам, полученным через API, редуктивной практикой? - PullRequest
0 голосов
/ 26 марта 2019
const Card = ({content}) => {
  const [isVisible, toggleIsVisible] = useState(false);
  return (
  <div onClick={() => { toggleIsVisible(!isVisible);}}>
    <div style={{color: 'gray', fontSize: '10px', visibility: isVisible? 'visible' : 'hidden'}}>
        {content} 
    </div>
  </div>
  );
}

Я использую здесь состояние, чтобы вспомнить, должна ли Карта быть видимой или нет. Все карты изначально берутся из API, а затем сохраняются в моем магазине редуксов. Кроме того, чтобы сделать карту видимой / невидимой, нажав на нее, я также хотел бы иметь действие, которое при отправке переключает (делает видимой / невидимой) текущую выбранную карту.

Похоже, что 'isVisible' необходимо сохранить в избыточном виде, как свойство каждой карты. Добавление этого свойства в мое избыточное состояние будет означать, что я добавляю дополнительные свойства к данным, которые я получил от API. - Это приемлемо? Или даже банальное?

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

И даже если это нормально, пожалуйста, дайте мне знать, возможно ли здесь другое решение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...