На самом деле я попробовал это также, но моя главная проблема:
useEffect(() => {
firebase.database().ref('User').on('value', (snapshot) => {
// console.log(snapshot)
var returnArr = [];
snapshot.forEach(function (childSnapshot) {
var item = childSnapshot.val();
item.key = childSnapshot.key;
returnArr.push(item);
});
return SetArray(returnArr);
})
// console.log(ReturnedArray)
}, [])
После рендеринга Flatlist:
<FlatList
data={ReturnedArray}
width='100%'
ItemSeparatorComponent={this.FlatListItemSeparator}
keyExtractor={(item, index) => 'key' + index}
renderItem={({ item }) => {
return (
<Text style={style.txt}>{item.name} {item.cognome} </Text>
)}
И из текстового ввода (как строка поиска) я запускаюфункция:
const searchApi = async(term) => {
await firebase.database().ref('User').on('value', (snapshot) => {
snapshot.forEach((child) => {
if (child.hasChildren()) {
if (child.val().name == term) {
var Result = [];
Result.push(child)
return SetArray(Result);
}
}
})
}
Но нет нового рендера ... Предложить?