2016-03-22 3 views
0

Как поставить две функции в событии, например onValueChange?Две функции в событии от React-Native

Я попытался с

onValueChange={(selected) => this.setState({selected}),this.state.eventOnChange}> 
+0

Почему вы не создаете функцию, в которой вы инкапсулируете вызов этих двух функций? –

+0

Это хороший выбор, спасибо !. –

ответ

4

Что о:

onValueChange={(selected) => { 
    this.setState({selected}); 
    this.state.eventOnChange(); 
}} 
+1

Выполняет первую функцию, но не вторую –

+1

@CarlosQuiroga просто называет ее также как 'this.state.eventOnChange();', обратите внимание на '()' в конце – Cherniv

+0

О, глупо меня, спасибо Чернов. – pinewood

1

Component.setState() является асинхронным и может быть заблокирован на второй вызов, пока он все еще делает первый.

ли второй вызов в функции обратного вызова, как это:

onValueChange= 
    { (selected) => { 
     this.setState(
      {category:selected},() => {this.filter();} // Add Functions That's you want to call. 
     ) 
    } 
} 
0

Решенный со следующим кодом:

<TextInput 
     style={{height: 40, width: 200, borderColor: 'gray', borderWidth: 1, }} 

     onChangeText={(text) => this.setState({ 
     text 
     },() => { 
     this._onChangeText(); 
     }) 
     } 
     autoCorrect={false} 
     underlineColorAndroid='rgba(0,0,0,0)' 
     value={this.state.text} 
    /> 

Благодаря @pinewood.

Смежные вопросы