错误:当字符串不为空时,必须在 React Native 的 <Text> 组件中渲染文本字符串

问题描述 投票:0回答:3

所以我最近遇到了文本标签中显示的错误,尽管我找不到它显示的原因。我已记录该值不为空并且在按下按钮之前该值已存在。这是我的 jsx 代码:

<TouchableOpacity style={styles.profilePhotoBack} onPress={() => addProfilePhoto()}>
                {profilePhoto ? (
                    <Image style={styles.image} source={{uri: profilePhoto}} />
                ) : (
                    <View style={styles.profilePhoto}>
                        <AntDesign name="plus" size={50} color="white" />
                    </View>
                )};
            </TouchableOpacity>

这是我的功能代码和状态:

    const [profilePhoto, setProfilePhoto] = useState();

    const getPermission = async () => {
        if (Platform.OS !== "web") {
            const { status } = await Permissions.askAsync(Permissions.CAMERA_ROLL);

            return status;
        }
    };

    const pickImage = async () => {
        try {
            let result = await ImagePicker.launchImageLibraryAsync({
                mediaTypes: ImagePicker.MediaTypeOptions.Images,
                allowsEditing: true,
                aspect: [1, 1],
                quality: 0.5
            });

            if (!result.cancelled) {
                setProfilePhoto(result.uri);
            }
        } catch (err) {
            alert("Error picking image. Please try again later.");
        }
    };

    const addProfilePhoto = async () => {
        const status = await getPermission();

        if (status !== "granted") {
            alert("Please allow access to your camera roll to create your profile photo.");
            return;
        }

        await pickImage();
    };

任何帮助将不胜感激,因为我已经被困在这里相当长一段时间了。谢谢!

javascript firebase react-native google-cloud-firestore react-native-firebase
3个回答
11
投票

删除 Touchable Opacity 结束标记之前的 profilePhoto 条件末尾的分号


2
投票

通常可能是由以下2个错误引起:

  1. 视图中残留分号
  2. 导入错误路径。

0
投票

有时 SVG 可能与您当前的 React Native 版本不兼容。要解决此问题,请按照下列步骤操作:

  1. 访问 SVG 优化器:

  2. 优化您的 SVG:

    • 将您的 SVG 代码粘贴到网站上提供的文本区域中。
    • 单击“优化”按钮。
  3. 复制优化的 SVG:

    • 优化后,复制优化后的SVG代码。
  4. 使用优化的 SVG:

    • 在 React Native 项目中将原始 SVG 代码替换为优化的 SVG 代码。

对我来说,这种方法非常有效 我希望这有帮助!

© www.soinside.com 2019 - 2024. All rights reserved.