То, что я пытаюсь сделать, это реквизиты компонента внутри другого компонента, чтобы изменить результаты. Реквизиты, которые я передаю этим компонентам, происходят из состояния Redux. Я делаю это, помещая компоненты React в массив, передавая этот массив в состояние React и отображая это состояние в методе render()
. Проблема в том, что когда я пытаюсь обновить реквизиты компонента, когда я делаю это, мое состояние Redux изменяется, делая результаты, которые я хочу показать, неверными. Код, когда я меняю реквизиты, выглядит следующим образом:
if (configId === grupo.configId) {
let elemento = graf;
let graficaSeleccionada =
<elemento.type {...elemento.props} {...{ key: elemento.key }}>
<elemento.props.children.type {...elemento.props.children.props}>
<elemento.props.children.props.children.type
{...elemento.props.children.props.children.props}
{...{ ...elemento.props.children.props.children.props, datasets, labels: modelo.ejeX }}
>
</elemento.props.children.props.children.type>
</elemento.props.children.type>
</elemento.type>;
nuevasGraficas.push(graficaSeleccionada);
}
Я хочу изменить значения наборов данных и меток исходного компонента. Компонент, который я хочу изменить реквизит, находится внутри других компонентов. Когда я делаю это, я помещаю компонент с измененными значениями в массив, чтобы обновить состояние, содержащее все мои компоненты, и изменить DOM. Почему это изменяет состояние избыточности, не отправляя действие?