Задать вопрос

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

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

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

Похожие вопросы
ITK academy Нижний Новгород
от 80 000 до 120 000 ₽
ITK academy Воронеж
от 50 000 до 90 000 ₽