Надо к примеру трекать состяние связанных компонентов внутри одного компонента. т.е. flux и dispatcher не нужен.
Сейчас в this.state.myList есть массив объектов с кучей свойств в каждом элементе массива и свойством uniqueKey. он (массив) в render() отображается в массив Buttons. Все свойства элемента отображаются развесистымы div-ами внутри каждый Button. Ксассика вобщем.
Для упрощения хочется трекать активную кнопку из списка дополнительно к встроенному в браузер поведению — что бы при уходе фокуса кнопка оставалась с кастомным статусом isActive.
ещё что бы при клике на другую кнопку перерендывались только две — старая активная и новая активная. Но для этого при клике по одной кнопке надо лезть в свойста старой активной кнопки
не нравится мне так.
В идеале хочется что б они не перерендывались а просто у старой отбирался мой кастомный css-класс а новой кликнутой кнопки добавлялся этот мой кастомный css-класс. Для этого надо как то где то помнить dom-id старой нажатой кнопки и юзать jquery. Это нормально юзать jquery в обработчике onClick?
В идеале нужен просто компонент, типа такого прототипа:
let buttonGroup = new ButtonGroup(id_of_parent_container, active_Css_ClassName)
этот buttonGroup сам находит все кнопки внутри элемента id_of_parent_container. подписывается на click. в обраюотчике click манипулирует css-классами.
ещё у него будет метод buttonGroup.forceSelect(theUniqueKey, button => return button.uniqueKey === theUniqueKey);
я привык что В jQuery есть доступ ко всему DOM а в реакте — нет. непойму как сделать это не изобретая фреймворков типа
такого. Выглядит клёво но прорисовка и горизонтальный бар мне не надо. и желательно без jQuery.