【发布时间】:2021-11-17 06:59:58
【问题描述】:
我正在学习本机反应,我正在导入一个 AppLoading 以使用自定义字体我得到了这个错误:
警告:React.createElement:类型无效 - 应为字符串(用于内置组件)或类/函数(用于复合组件)但得到:未定义。您可能忘记从定义组件的文件中导出组件,或者您可能混淆了默认导入和命名导入。
我的 app.js
import React, { useState } from 'react';
import * as Font from 'expo-font';
import Home from './screens/Home';
import { AppLoading } from 'expo-app-loading';
const getFonts = () =>
Font.loadAsync({
'nunito-regular': require('./assets/Fonts/Nunito-Regular.ttf'),
'nunito-bold': require('./assets/Fonts/Nunito-Bold.ttf'),
});
export default function App() {
const [fontsLoaded, setFontsLoaded] = useState(false);
if (fontsLoaded) {
return <Home />;
} else {
return <AppLoading startAsync={getFonts} onFinish={() => setFontsLoaded} />;
}
}
我的 Home.js
import React from 'react';
import { StyleSheet, View, Text } from 'react-native';
export default function Home() {
return (
<View style={styles.container}>
<Text style={styles.titleText}>Home Screen</Text>
</View>
);
}
const styles = StyleSheet.create({
container: {
padding: 24,
},
titleText: {
fontFamily: 'nunito-bold',
fontSize: 18,
},
});
【问题讨论】:
标签: javascript reactjs react-native mobile