【发布时间】:2021-10-27 01:08:02
【问题描述】:
在我的应用上注册用户时,我不断收到错误“null is not an object (evalating 'str.split')”。注册后,用户登陆 HomeScreen,其中包含“str.split”字符串,该字符串将 firebase 显示名称拆分为第一个单词(名字)。无法弄清楚如何修复错误。
import { View, Text, Image, Button, StyleSheet } from 'react-native';
import { auth } from '../firebase';
const HomeScreen = ({ navigation }) => {
var str = auth?.currentUser?.displayName;
const welcomeText = (str.split(' ')[0]);
return (
<View style={styles.homeContainer}>
<View style={styles.overviewContainer}>
<View style={styles.welcomeContainer}>
<Text style={styles.welcomeText}>Hello <Text style={styles.welcomeTextBold}>{welcomeText}</Text></Text>
<Image style={styles.welcomeIcon} source={require('../assets/images/Welcome-Icon.png')} />
</View>
</View>
</View>
【问题讨论】:
-
错误是
str为空。所以auth、auth.currentUser或auth.currentUser.displayName都没有设置。 -
console.logstr 并检查它是否是有效的string -
@Rohit 它是一个有效的字符串,它工作得很好,它拆分了 displayName 但我仍然收到错误
-
你确定它是一个完美的字符串,即使是新注册的用户?默认显示名称为空。\
标签: javascript firebase react-native jsx