@CHtommy

Почему .includes не проверяет наличие массива?

Здрасте, не могу понять по какой причине я получаю все элементы "disabled" (использую либу classNames).
const typeNames = ['settings1', 'settings2'];
    const [activeType, setActiveType] = useState(0);

    const onSelectType = (index) => {
        setActiveType(index)
    }

className={classNames("item_settings",{ active: activeType === index && types.includes(index), disabled: !types.includes(index)})}

Получаю массив элементов через API и сравниваю их с typeNames (своими) и через сравнение выключаю те элементы, которые не находятся в массиве переданным через API
т.е typeNames = 0 , 1 , если в апи совпадает все (0, 1 ) то элементы все активные, если нет, то один из них становится disabled
Классика, ничего сложного.
Делал различные проверки - все переданные через .map элементы - имеют true. Разбирал полученный массив из API - данные обновляются, все правки приходят без ошибок.
В консоли со strict модом никаких ошибок.
Как дебажить - не могу понять.
Сам компонент рендерится через .map с актуальными данными
redux не использую
upd: сами компоненты тоже через .map прогоняю с key. Соответственно в каждой позиции генерируется свой блок
  • Вопрос задан
  • 121 просмотр
Решения вопроса 1
@CHtommy Автор вопроса
Всем спасибо, кто писал...Проблема была видимо в API, где-то внутри системы. Массив чисел "types" просто не хотел нормально числа выводить, попробовал ввести все сначала и заработало.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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