React native Flatlist没有读到“;“数据”;在react native中使用钩子的变量集
我在react native项目中使用钩子,并使用引用的firebase数据库设置数据变量,当我在控制台记录此数据变量时,它首先显示null,几秒钟内显示获取的数据,但flatlist没有读取它。请纠正我的错误。这是我的密码:React native Flatlist没有读到“;“数据”;在react native中使用钩子的变量集,react-native,react-hooks,react-native-flatlist,React Native,React Hooks,React Native Flatlist,我在react native项目中使用钩子,并使用引用的firebase数据库设置数据变量,当我在控制台记录此数据变量时,它首先显示null,几秒钟内显示获取的数据,但flatlist没有读取它。请纠正我的错误。这是我的密码: RecommenTab = () => { useFirebaseQuery = ref => { const [docState, setDocState] = useState({ isLoading: true, da
RecommenTab = () => {
useFirebaseQuery = ref => {
const [docState, setDocState] = useState({
isLoading: true,
data: null
});
useEffect(() => {
return ref.on("value", snapshot => {
setDocState({
isLoading: false,
data: snapshot
});
});
}, []);
return docState;
};
renderSeparator = () => {
return (
<View
style={{
height: 1,
width: "86%",
backgroundColor: "#CED0CE",
marginLeft: "14%"
}}
/>
);
};
userList = () => {
const ref = database.ref("users");
const { isLoading, data } = this.useFirebaseQuery(ref);
if (data != []) {
return (
<SafeAreaView style={{ marginTop: 20 }}>
{console.log(data)}
<Text>SHOW</Text>
<FlatList
data={data}
renderItem={({ item }) => (
<View>
<Text>Work</Text>
<ListItem
title={item.name}
subtitle={item.username}
leftAvatar={{
rounded: true,
source: { uri: item.avatar }
}}
/>
</View>
)}
keyExtractor={item => item.id}
ItemSeparatorComponent={this.renderSeparator}
/>
</SafeAreaView>
);
}
};
return <View>{this.userList()}</View>;
};
RecommenTab=()=>{
useFirebaseQuery=ref=>{
const[docState,setDocState]=useState({
孤岛加载:是的,
数据:空
});
useffect(()=>{
返回ref.on(“值”,快照=>{
setDocState({
孤岛加载:false,
数据:快照
});
});
}, []);
返回状态;
};
RenderParator=()=>{
返回(
);
};
用户列表=()=>{
const ref=database.ref(“用户”);
const{isLoading,data}=this.useFirebaseQuery(ref);
如果(数据!=[]){
返回(
{console.log(数据)}
显示
(
工作
)}
keyExtractor={item=>item.id}
ItemSeparatorComponent={this.renderSeparator}
/>
);
}
};
返回{this.userList()};
};