Как уже писал
wifftees можно реализовать каждый товар как объект с критериями. Тогда при выборе определенной сортировки в фильтрах необходимо будет всего лишь искать товары с подходящими под фильтр критериями. Например у вас в фильтре выбрано "Видеокурс", следовательно вам нужны товары только с условным
{
...
category: 'video_course',
...
}
внутри объекта.
Пишем функцию сортировки которая принимает на вход весь ваш массив объектов, с помощью например Array.filter() фильтруют по наличию у объекта нужной категории категории, в нашем случае это 'video_course', и отдают обратно готовый отфильтрованный массив.
UPD. Если конкретно про Реакт говорить то просто храним данные которые будем показывать в стейте созданном с помощью useState() и при выборе фильтра просто обновляем наш стейт, в результате чего отображаемые объекты тоже меняются.