У меня есть множество компоентов в dropdown списке. Надо чтобы при нажатии на любой из элементов списка, происходило конкретное действие.
Если я делаю так:
functiion filter() {
return(
<div className={`${styles.option_list} no_decorate`}>
{Object.entries(selectedItem).map(region => {
let test = 'test'
return <Card key={uniqueKeyGenerator()} region={region[0]} selected={region[1]} onClick={(test) => console.log(test)} />
}
)}
</div>
)
}
function Card({ region, selected = false }) {
return (
<div className={`${styles.option} ${selected ? styles.selected : ''}`}>
{region}
</div>
)
}
то в консоли не выводится ничего. Если же я делаю так:
functiion filter() {
return(
<div className={`${styles.option_list} no_decorate`}>
{Object.entries(selectedItem).map(region => {
let test = 'test'
return <Card key={uniqueKeyGenerator()} region={region[0]} selected={region[1]} onClick={(test) => console.log(test)} />
}
)}
</div>
)
}
function Card({ region, selected = false, onClick }){
return (
<div onClick={onClick} className={`${styles.option} ${selected ? styles.selected : ''}`}>
{region}
</div>
)
}
то в консоли выводится это:
Вопрос - как мне реализовать реакцию на событие onClick
с передачей параметра.
export default function App() {
const onClickHandler = (value) => {
console.log(value);
};
return <Card onClickHandler={onClickHandler} />;
}
export default function Card({ onClickHandler }) {
return <button onClick={() => onClickHandler("test")}>Click me</button>;
}
Пример
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
У меня есть массив содержащий массивы с пустыми строкамимне нужно удалить все массивы с пустыми строками и оставить только те,которые содержат...
Есть переменная, в которой хранится html код: <p><img src="/"></p> Как из этого выбрать только <img> и записать в отдельную переменную?