Как удалить из объекта несколько ненужных ключей?

компонент Draggable создает props, которые передаются в компонент Legend, так же я сама передаю contoursLegend и wellsLegend как props в компонент Legend. Как мне в Legend в объекте props удалить ключи wellsLegend и contoursLegend ?
const contoursLegend = useSelector(getContoursLegend);
  const wellsLegend = useSelector(getWellsLegend);
 <Draggable>
        <Legend contoursLegend={contoursLegend} wellsLegend={wellsLegend}/>
</Draggable>


в компоненте Legend я пробовала удаление, но не получается
const newProps = {...props}

  const rootProps = Object.keys(newProps).forEach(
    item => (item === 'contoursLegend' || item === 'wellsLegend') && delete newProps[item],
  );

return (
<div {...rootProps}> ... </div>
)
  • Вопрос задан
  • 82 просмотра
Решения вопроса 1
Зачем?
Логичнее передать в div фиксированный набор пропсов, а пропсы получить деструктуризацией.
Если их уж слишком много тогда следует использовать что то вроде
https://lodash.com/docs/4.17.15#omit
Ну или сделать const newProps = {...props} и уже из newProps удаоять лишнее
но вариант с omit или newProps может быть плохо поддерживаемым
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы