Вызов 2 функций в событии onChange

Я немного застрял с моим компонентом, мне нужно вызвать onChange из реквизита так

<input type="text" value={this.state.text} onChange={this.props.onChange} />

, но и вызвать другую функцию в компоненте под названием handleChange() обновления государства.текст, я пытался

 <input type="text" value={this.state.text} onChange={this.props.onChange; this.handleChange} />

но это, кажется, не работает.

2 ответов


Вы можете сделать это, поставив две функции в двойные кавычки:

<input type="text" value={this.state.text} onChange="this.props.onChange(); this.handleChange();" />

Это должно работать. Но было бы лучше, если бы вы вызвали вторую функцию в пределах первой:

function testFunction() {
    onChange();
    handleChange();
}

function(e) {this.props.onChange(e); this.handleChange(e)}.bind(this)

Вы можете .bind(this), но я подозреваю, что вы будете.

это создаст новую функцию для каждого рендеринга, поэтому в некоторых отношениях было бы лучше, чтобы эта функция была компонентным методом, но это должно работать.