我是React Native的新手,我只想问一些有关在按下Delete按钮后获取新数据的问题。我曾尝试使用此代码,但是如果按Delete键,则屏幕上仍可使用数据,但已在数据库中将其删除。是错误还是错误?我应该怎么做才能使数据从屏幕上消失?
DeleteUsers = () => {
fetch('http://192.168.43.67/crudPHP/delete.php',
{
method: 'DELETE',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body: JSON.stringify({ id: this.state.TextInputId })
})
.then((response) => response.json())
.then((responseJson) => {
Alert.alert(responseJson);
})
.catch((error) => { console.error(error); })
this.props.navigation.navigate('Second')
}
render(){
return (
<View style={{
flex: 1, alignItems: "center", marginTop: 5,
backgroundColor: '#fff'
}}>
<TextInput
value={this.state.TextInputNama}
placeholder='Masukan Nama'
onChangeText={TextInputValue => this.setState({ TextInputNama: TextInputValue })}
underlineColorAndroid='transparent'
style={styles.TextInputStyle1}
/>
<TextInput
value={this.state.TextInputEmail}
placeholder='Masukan Email'
onChangeText={TextInputValue => this.setState({ TextInputEmail: TextInputValue })}
underlineColorAndroid='transparent'
style={styles.TextInputStyle2}
/>
<TextInput
value={this.state.TextInputPhoneNumber}
placeholder='Masukan Nomor Telepon'
onChangeText={TextInputValue => this.setState({ TextInputPhoneNumber: TextInputValue })}
underlineColorAndroid='transparent'
style={styles.TextInputStyle2}
/>
<TouchableOpacity activeOpacity={.4} style={styles.TouchableOpacityStyle} onPress={this.UpdateUsers}>
<Text style={styles.textStyle}>Update Data</Text>
</TouchableOpacity>
<TouchableOpacity activeOpacity={.4} style={styles.TouchableOpacityStyleDel} onPress={this.DeleteUsers}>
<Text style={styles.textStyle}>Delete</Text>
</TouchableOpacity>
</View>
)
答案 0 :(得分:2)
这不是错误,而是逻辑错误。您的数据已从数据库中删除,但您的本地数据仍在设备上,因此正在显示。您应该清除一旦成功删除远程数据。