Хочу понять, как в onChange= передать две функции, когда пытаюсь написать туда check this.check() или даже onChange={event => this.check(event)} то первая функция не работает так, как нужно, как-будто в неё не приходит эвент, при этом одна она там абсолютно нормально работает
import React, {Component} from 'react'
import PropTypes from 'prop-types'
import CountReducer from '../reducers/CountReducer'
import { Link } from 'react-router-dom';
export default class Counter extends Component {
constructor(props) {
super(props);
this.check = this.check.bind(this);
}
check(event)
{
this.props.onUpdateClick(event.target.value);
this.props.onLink(event.target.value);
}
render() {
const {count, wish_value, onIncreaseClick,onLink,onUpdateClick} = this.props
if (count === 1){
return(
<div>
<div>
<span>{count}</span>
<button onClick={onIncreaseClick}>Increase</button>
<button onClick={onLink}>Поиск</button>
<button onClick={onLink}>
<Link to="/search">Поиск</Link>
</button>
<input value={wish_value} type="text" onChange={onUpdateClick} onClick={onLink}/>
</div>
</div>
)} else { return (
<div>
<div>
<span>{count}</span>
<button onClick={onIncreaseClick}>Increase</button>
<button onClick={onLink}>Поиск</button>
<button onClick={onLink}>
<Link to="/" onClick={alert("неверное имя п")}>Поиск</Link>
</button>
<input value={wish_value} type="text" onChange={onUpdateClick} onClick={onLink}/>
</div>
</div>)
}
}
}
export const updateTodo = (wish_value) => {
return {
type:'update',
wish_value: wish_value
}
}
export const linkTodo = (wish_value) => {
return {
type: 'link',
wish_value: wish_value
}
}
function mapDispatchToProps(dispatch) {
return {
onIncreaseClick: () => dispatch(actions.increaseTodo()),
onLink: () => dispatch(actions.linkTodo()),
onUpdateClick: event => dispatch((
actions.updateTodo(event.target.value)
))
}
}
У меня получилось, спасибо @DmitryKozlov, изменения, которые я внёс:
check(event)
{
this.props.onUpdateClick(event);
this.props.onLink(event.target.value);
}
<input value={wish_value} type="text" onChange={this.check} onClick={onLink}/>
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости