错误:文本字符串必须在组件内呈现。在RCTView中(由视图创建)在视图中(由应用程序创建)在RCTView中(由视图创建)在视图中(由ImageBackground创建)在ImageBackground中(由应用程序创建)在RCTView中(由视图创建)在视图中(由NativeLinearGradient创建)在NativeLinearGradient中(由LinearGradient创建)在LinearGradient中(由App创建)在App中(由withDevTools(App)创建)在withDevTools中(App)in RCTView(created by View)in View(created by AppContainer)in RCTView(created by View)in View(created by AppContainer)in AppContainer in main(RootComponent),js engine:爱马仕
在Udemy听讲座时出错。
这里是App.js
import { useState } from "react";
import { StyleSheet, ImageBackground, SafeAreaView } from "react-native";
import { LinearGradient } from "expo-linear-gradient";
import StartGameScreen from "./screens/StartGameScreen";
import GameScreen from "./screens/GameScreen";
export default function App() {
const [userNumber, setUserNumber] = useState(null);
function pickedNumberHandler(pickedNumber) {
setUserNumber(pickedNumber);
}
let screen = <StartGameScreen onPickNumber ={pickedNumberHandler}/>;
if (userNumber) {
screen = <GameScreen />;
}
return (
<LinearGradient colors={["#ddb52f", "#4e0329"]} style={styles.rootScreen}>
<ImageBackground
source={require("./assets/images/background.png")}
resizeMode="cover"
style={styles.rootScreen}
imageStyle={styles.backgroundImage}
>
<SafeAreaView style={styles.rootScreen}> {screen} </SafeAreaView>
</ImageBackground>
</LinearGradient>
);
}
const styles = StyleSheet.create({
rootScreen: {
flex: 1,
},
backgroundImage: {
opacity: 0.2,
},
});
当SafeAreaView组件不存在时,{screen}中不会出现错误,但当屏幕包含SafeAreaView组件时,会出现上述错误。
我确保所有自定义组件都能很好地将文本放入文本组件中。
如果您能让我知道是否有任何错误点或其他错误,我将不胜感激
1条答案
按热度按时间krcsximq1#
你可以做以下事情,它会起作用。