При создании сущностей с помощью Normalizr, как я могу получить свойство объекта, которое иногда бывает пустым, чтобы вернуть пустой объект вместо неопределенного? - PullRequest
0 голосов
/ 18 июня 2020

Когда я смотрю на сущности, которые возвращает Normalizr, если свойство ManualProjected является пустым объектом, то свойство, возвращаемое при обмене, будет «undefined».

Могу ли я как-то по умолчанию он просто возвращает пустой объект {}?

const candidate = new schema.Entity('candidates', {}, {
  idAttribute: 'ID'
});

const races = new schema.Entity('races', {
  APProjected: candidate,
  Candidates: [candidate],
  ManualProjected: candidate  // THIS IS SOMETIMES AN EMPTY OBJECT {}
}, {
  idAttribute: 'AltID'
});

const state = new schema.Entity('states', {
  Races: [races]
}, {
  idAttribute: 'State'
});

export { state };

Я пробовал использовать "processStrategy" как это, но это не сработало, так как value.ManualProjected уже есть {}, поэтому кажется избыточным.

const raceProcessStrategy = (value, parent, key) => {  
  return {
    ...value,
    ManualProjected: !isEmpty(value.ManualProjected) ? value.ManualProjected : {}
  }
};

Спасибо за любую помощь

...