如何不覆盖数据库中的数据

时间:2019-07-01 18:13:08

标签: javascript react-native

我在数据库(Couch / Pouch)中输入数据时遇到问题。 基本上我有一种形式,通过它我将输入的值传递给在数据库中执行放置操作的函数,从而输入数据。 问题是,如果偶然地将表单中的这些字段之一留空,则一旦执行看跌期权,就会将该字段从数据库中删除。

因此,例如,如果我在数据库中具有FirstName:“ NameUser”字段,并且要编译该表单,则在与FirstName对应的字段中不输入任何内容,则将从数据库中删除值FirstName和“ NameUser”。

如何解决此问题?谢谢大家。

//.....
.then(response => {
  let utente = response.docs[0];
    utente.Person.FirstName = this.state.FirstName;
    utente.Person.LastName = this.state.LastName;
    utente.Person.City = this.state.City;
    utente.Person.Address = this.state.Address;
    return global.utente.db.localdb().put(utente);  
})
.catch(function(err) {
  console.log(JSON.stringify(err));
}) }

render() {
return (
<View style={style.container}>
  <View style={style.page}>
    <KeyboardAwareScrollView>

      <View style={style.inputContainer}>
        <TextInput
          style={style.inputs}
          placeholder="Name"
          placeholderTextColor="#64c7c0"
          keyboardType="default"
          underlineColorAndroid="grey"
          onChangeText={FirstName =>
            this.setState({ FirstName })
          }
        />
      </View>

      <View style={style.inputContainer}>
        <TextInput
          style={style.inputs}
          placeholder="Surname"
          placeholderTextColor="#64c7c0"
          keyboardType="default"
          underlineColorAndroid="grey"
          onChangeText={LastName => 
            this.setState({ LastName })}
        />
      </View>

      <View style={style.inputContainer}>
        <TextInput
          style={style.inputs}
          placeholder="City"
          placeholderTextColor="#64c7c0"
          keyboardType="default"
          underlineColorAndroid="grey"
          onChangeText={City => this.setState({ City })}
        />
      </View>
      {/*
      <View style={style.inputContainer}>

      </View>
        */}
      <View style={style.inputContainer}>
        <TextInput
          style={style.inputs}
          placeholder="Address"
          placeholderTextColor="#64c7c0"
          keyboardType="default"
          underlineColorAndroid="grey"
          onChangeText={Address => this.setState({ Address })}
        />
        <View style={style.footer}>
          <TouchableOpacity
            style={[style.button, style.buttonOK]}
            onPress={() => this.findUtente(this.props.cf)}
          >
            <Text>Save</Text>
          </TouchableOpacity>

0 个答案:

没有答案