[英]How to get user id from firebase in react native?
I need your help I'm using firebase for my app.我需要你的帮助,我正在为我的应用程序使用 firebase。 I'm trying to get the users ID not the logged users no all users I have.
我正在尝试获取用户 ID,而不是登录用户,而不是我拥有的所有用户。 I want to show their (uid) simply like in an alert for each user.
我想像在每个用户的警报中一样显示他们的(uid)。 Also, I'm showing them in a flatlist and when I set
item.uid
in an alert it shows (undefined)
.此外,我将它们显示在一个平面列表中,当我在警报中设置
item.uid
,它会显示(undefined)
。 But, all the other data of the user is shown correctly.但是,用户的所有其他数据都显示正确。 This what I did until now:
这就是我到目前为止所做的:
** users.js ** ** 用户.js **
export default class usersList extends React.Component{
state = {
loading: false,
uid: '',
users: [],
items: []
};
componentDidMount() {
let itemsRef = f.database().ref('users').once('value').then(snapshot => {
var data = snapshot.val();
var items = Object.values(data);
this.setState({items});
console.log(snapshot.val())
});
}
renderItem({item}) {
return (
<View key={index} style={{width: '100%', overflow:'hidden', marginBottom: 5, justifyContent:'space-between', borderBottomWidth:1, borderColor: 'grey'}}>
<View>
<View style={{padding:5, width:'100%', flexDirection: 'row', justifyContent: 'space-between'}}>
<Text>{item.email}</Text>
</View>
</View>
</View>
)
}
render() {
return (
<View style={styles.container}>
<ScrollView>
{
this.state.items.length > 0
? <ItemComponent items={this.state.items} navigation={this.props.navigation} />
: <Text>No stores</Text>
}
</ScrollView>
</View>
);
}
}
//ItemComponent.js //ItemComponent.js
export default class ItemComponent extends Component {
static propTypes = {
items: PropTypes.array.isRequired
};
render() {
return (
<View style={styles.itemsList}>
{this.props.items.map((item, index) => {
return (
<View key={index}>
<TouchableOpacity
onPress={ () => alert(item.uid)}>
<Text style={styles.itemtext}>{item.email}</Text>
</TouchableOpacity>
</View>
)
})}
</View>
);
}
}
firebase.database().ref('user').on('value', (datasnapshot) => {
this.setState({
_id: datasnapshot.key
});`
这个解决方案对我有用
<Text style={styles.yourStyleHere}>UID: {auth.currentUser?.uid} </Text>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.