Ответы пользователя по тегу React
  • Как отфильтровать продукты json в данном случае?

    @VladimirAsmo
    Если я правильно понял задачу, то можно вот так.
    const Products = ({products, filters}) => {
      const filteredProducts = products.filter((product) => { 
        const currentFilter = filters.promotion.find((filter) => product.id === filter.id);
    
        if (!currentFilter) return true; // or do something else
        if (!product.hasOwnProperty(currentFilter.name)) return true;
    
        return product[currentFilter.name] === currentFilter.value;
      });
    
      return (
         <>
           {filteredProducts.map(...)}
        </>
      );
    }

    Такое решение будет работать если ваши products и filter.promotion согласуют типы данных. Сейчас у вас каша. products.discount хранит boolean, а filter.promotion[0].value - string. Чтобы корректно сравнить, они должны быть одного типа, ну или определиться какие строковые значения у вас будут означать true, а какие false.
    Ответ написан
    Комментировать
  • Как в цикле отрисовать компоненту?

    @VladimirAsmo
    Если очень надо, то можно как то так:
    const renderPageNumber = (number) => {
        const nextIcons = Array(number)
          .map((icon, id) => <NextIcon i={id + 1} key={?} />);
        return nextIcons;
      }


    Но, блин, это ппц какое извращение передавать в компонет количество дочерних компонент и отрисовывать их в цикле. Перечитайте учебник, вы как то не совсем правильно начали знакомство с этой библиотекой.
    Ответ написан