Я создаю интернет-магазин, используя NEXT. JS и REDUX. На странице со списком продуктов у меня есть раздел фильтров с размером, цветом и т. Д. c. При щелчке по заголовку содержимое должно переключаться. Я пробовал использовать приведенный ниже код, но он не работает должным образом.
const [showMe, setShowMe] = useState(0);
function toggle(index) {
setShowMe(index);
}
<div className="other">
<h6>Refine</h6>
<hr/>
{products.filter.map((item, index) => (
<div key={index}>
<div className="single">
<div className="title" onClick={() => toggle(index)}>
<p className="float-left">{item.title}</p>
<p className="float-right"><FontAwesomeIcon icon={showMe === index ? faChevronUp : faChevronDown}/></p>
</div>
<ul style={{display: showMe === index ? "block" : "none"}}>
{item.items.map((single, index1) => (
<li key={index1}>
<label><input type="checkbox" name="checkbox" value="value"/> {single.items_value}</label>
</li>
))}
</ul>
</div>
<hr/>
</div>
))}
</div>
Первоначально индекс 0 открыт, а другие закрыты. Onclick index 0 не закрывается. Индекс Onclick 1 открывается, а индекс 0 закрывается.
Я хочу, чтобы вывод был, как изначально все раскрывающееся меню должно быть открыто. При нажатии на каждый div он должен быть закрыт, а при нажатии на него он должен открываться. Как изменить мой код, чтобы добиться этого.