Ola pessoa, estou desenvolvendo uma aplicação mobile (android) utilizando o firebase e me deparei com um problema… Estou precisando pegar os valores do meu banco firebase e mostrar num Picker do react, mas quando retorno a lista ela simplesmente retorna nada, totalmente vazia.
import React, { useState } from 'react';
import { View, Text,StyleSheet, Picker,FlatList } from 'react-native';
import PickerModal from 'react-native-picker-modal-view';
import { db } from './config' ;
const dbref = db.ref('/Casa');
didMountComponent = () => {
db.ref('/Casa').on('value', querySnapShot => {
let data = querySnapShot.val()? querySnapShot.val(): {};
let casaItem = {...data};
setState({
casas: this.casaItem,
});
});
};
export default function CriarUsuario({navigation, route }){
const [ state, setState] = useState({
casas: [],
casaSelecionada: '',
});
didMountComponent = () => {
db.ref('/Casa').on("child_added",function(snapshot, prevChildKey){
let newPost = snapshot.val();
let casaItem = {...newPost};
setState({
casas: casaItem,
});
});
};
return (
<View>
<Text> CriarUsuario </Text>
<Text>ola pobo</Text>
<Picker
selectedValue={state.casaSelecionada}
// style={styles.picker}
onValueChange={(itemValue, itemIndex) =>
setState({ casaSelecionada: itemValue})
}
>
{state.casas.map((item, index) => {
return (
<Picker.Item
label={item.casas}
value={item.casas}
key={index}
/>
);
})}
</Picker>
</View>
);
}
Basicamente esse Picker viria do resultado de uma function que registrava as casas , e neste codigo que postei so gostaria de mostrar as casas a qual eu registrei na função anterior(não esta no post).
. Estou utilizando a v5.0 do Firebase.