Мне необходимо в localStorage создать объект в котором будут хранится закладки. Пытался найти какой нибудь гайд, решение ,пример как просто передать параметр при нажатии на кнопку. Попробовал пример из данного решения (https://learn-reactjs.ru/basics/handling-events) выдает ошибку.
Cannot read property 'updateMarker' of undefined
Функция обработчик onClick
updateMarker(key, value) {
console.log('кнопка нажата', key,value)
// update react state
this.setState({ [key]: value });
// update localStorage
localStorage.setItem(key, value);
}
Кнопка которая передает 2 параметра.
render() {
return (
<div>
<ul className="list-group">
{
this.props.items.map(function(item) {
console.log(item)
return( <div key={item}>
<li className="list-group-item" data-category={item}>{item}</li>
<button type="button" className="btn btn-dark" onClick={e => this.updateMarker('newMarker', item)}>Закладки</button>
</div> );
})
}
</ul>
</div>
);
}
Вы теряете ваш контекст в этом месте
this.props.items.map(function(item) {
Попробуйте так
this.props.items.map(item => {
Я бы посоветовал всё написать на es7
updateMarker = (key, value) => { ... }
render() {
const { items } = this.props;
return (
<div>
<ul className="list-group">
{
items.map((item) => { ... })
}
</ul>
</div>
);
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Всем привет! вот codePenЕсть картинка, src dataUrl
Постараюсь задать вопрос максимально понятно, так как не очень разбираюсь