map(), чтоб при клине открывался не все скрытые поля а именно на тот который кликнул ( $this). Как реализовать можно это ?
                  
                  
                  
                  
                  
                  const [isOpen, setIsOpen] = useState(false)
                  
                  
                  const toggleItem = () => setIsOpen(!isOpen)
                  
                  
                  
                  
                  
                   const coinRenderItem = (e, i) => {
                  
                  
                      <div className="item" key={e.id}>
                  
                  
                       ...
                  
                  
                  
                  
                  
                       <button onClick={toggleItem}>Open</button>
                  
                  
                  
                  
                  
                       <div className={`hidden-section ${isOpen ? 'd-none' : 'd-block'}`}>
                  
                  
                        Some Text
                  
                  
                       </div>
                  
                  
                  
                  
                  
                        </div>
                  
                  
                   }
                  
                  
                  
                  
                  
                   return (
                  
                  
                    <>
                  
                  
                     {{array.map(coinRenderItem)}}
                  
                  
                    </>
                  
                  
                   )
                  
                  
                
создаешь компонент, в котором состояние есть, а потом мапаешь его
const Parent = () => { return [].map((x,i) => <Child key={i} data={x} />) } const Child = ({data}) => { const [view, setView] = useState(false) return <div onClick={() => setView(s => !s)}>{view && data.name}</div> }
Спасибо, получилось !
Обсуждают сегодня