Я использую функцию удаления, как показано ниже, используя весь код здесь:
Шаг 1. Отрисовка представления и добавление TouchableOpacity, как показано ниже:
<TouchableOpacity onPress={() => this.deleteAddress(itemData.item._id)}>
<Icon name="trash" style={{paddingLeft: 10,paddingRight:10}} size={20} color="red" />
</TouchableOpacity>
Шаг 2: Добавьте окно подтверждения, как показано ниже:
deleteAddress(id) {
Alert.alert(
'Delete Address',
'Are you sure want to delete this address ?',
[
{text: 'Cancel', onPress: () => console.log('Cancel Pressed'), style: 'cancel'},
{text: 'OK', onPress: () => this.deleteAddressDetail(id)},
],
{ cancelable: false }
)
}
Шаг 3: вызовите свой API или что-нибудь здесь:
deleteAddressDetail(id) {
//Delete api or anything here
//after that call your list so updated state data will render
}
Ваш обновленный код плоского списка:
<FlatList
data={this.state.addressList}
keyExtractor={this._keyExtractor}
extraData={this.state}
renderItem={this.renderRowItem}
/>
Используйте элемент рендеринга, как показано ниже:
renderRowItem = (itemData) => {
<TouchableOpacity onPress={() => this.deleteAddress(itemData.item._id)}>
<Icon name="trash" style={{paddingLeft: 10,paddingRight:10}} size={20} color="red" />
</TouchableOpacity>
}
person
Rahul Mishra
schedule
15.10.2019