如何触发TouchableOpacity的onPress()而不是AutoComplete输入的onBlur()?

时间:2018-11-12 08:15:21

标签: javascript react-native autocomplete

JS

state = {
  autoComplete: [];
  value: ''
}

selectValue = (item) => {
  console.log('Value is selected");
}

setValue = (value) => {
  this.setState({
    value
  });
}

closeAutocomplete = () => {
  console.log("autocomplete is closed");
  this.setState({
    autoComplete: []
  });
}
<Autocomplete 
    data={this.state.autoComplete} 
    defaultValue={this.state.value} 
    onChangeText={(value)=> this.setValue(value)} 
    onBlur={this.closeAutocomplete}
    renderItem={(item) => (
        <TouchableOpacity avatar onPress={()=> this.selectValue(item)}>
            <View>
              <Text>{item}</Text>
            </View>
        </TouchableOpacity>
    )} 
/>

从自动完成列表中选择任何项目时,不会触发onPress()而是会触发onBlur。

预期:单击自动完成列表项时必须调用onPress。

问题:点击列表项时调用了onBlur()

0 个答案:

没有答案