Значения My Picker динамически поступают из одной таблицы базы данных и сохраняют эти значения в другой, но проблема заключается в том, что они не сохраняются в другой таблице. Вот мой код, который отображает значения из другой таблицы:
this.state={
departments:[],
selectedServicex:[],
}
let serviceItemsx = this.state.departments.map( (s, i) => {
return <Picker.Item key={i} value={s.name} label={s.name} />
});
return(
<Picker
selectedValue={this.state.selectedServicex}
style={styles.inputBorder}
onValueChange={ (departments) => ( this.setState({selectedServicex:departments}) ) } >
{serviceItemsx}
</Picker>);
Это мои значения выборки ComponentDidMount, отображаемые в средстве выбора:
componentDidMount() {
let currentComponentx = this;
deptref.on("value", function(snapshot) {
console.log(snapshot.val());
let data = snapshot.val();
let departments = Object.values(data);
currentComponentx.setState({departments});
}); }
И это моя функция firebase, которая вставляет все значения, кроме значения, взятого из средства выбора:
export const addSociety = (name,department,description,purpose) => {
const uuidv1=require('uuid/v1');
uuidv1();
db.database().ref('/societies').push({
name,
department,
description,
purpose,
}).then((data)=>{
alert("Society Added Successfully")
}).catch((error)=>{
//error callback
alert('error ' , error)
});
};