Javascript 我能';不要在我的电脑上使用apploading。它不能正常工作
我不断地发现这个错误: 以下是我用来导入自定义谷歌字体的代码:Javascript 我能';不要在我的电脑上使用apploading。它不能正常工作,javascript,reactjs,react-native,Javascript,Reactjs,React Native,我不断地发现这个错误: 以下是我用来导入自定义谷歌字体的代码: import React, { useState } from "react"; import Home from "./screens/home"; import { View } from "react-native"; import * as Font from "expo-font"; import { AppLoading } from &qu
import React, { useState } from "react";
import Home from "./screens/home";
import { View } from "react-native";
import * as Font from "expo-font";
import { AppLoading } from "expo";
const getFonts = () =>
Font.loadAsync({
"poppins-regular": require("./assets/fonts/Poppins-Regular.ttf"),
"poppins-bold": require("./assets/fonts/Poppins-Bold.ttf"),
});
export default function App() {
const [fontsLoaded, setFontsLoaded] = useState(false);
if (fontsLoaded) {
return <Home />;
} else {
return (
<AppLoading startAsync={getFonts} onFinish={() => setFontsLoaded(true)} />
);
}
}
我似乎找不到错误,也无法修复它。我以前在另一个项目中做过这件事,它成功了。获取字体信息的方法完全相同。我唯一能想到的就是我的包裹可能已经过时了?但我甚至不确定该更新哪个软件包
有人能帮忙吗?我可以从您的package.json中看到您正在使用expo SDK 40(目前最新版本) 应用已从SDK 40中的expo软件包中提取 如果要使用此组件,应运行expo安装expo应用程序加载并从其自己的包导入应用程序:从“expo应用程序加载”导入应用程序加载;。这是使世博会包装尽可能轻的持续努力的一部分 查看世博会博客 步骤:
步骤1:
expo安装expo应用程序加载
第二步:
替换“expo”中的导入{AppLoading}代码>
通过从“expo应用程序加载”导入应用程序加载代码>
步骤3:重新启动expo-dev服务器(expo-start)您必须在font.loadAsync前面添加return关键字,谢谢!它不再给我错误。然而,当我在expo上运行它时,它并没有在我的手机上加载任何东西。它在我的终端中给了我这个错误:加载时,AppLoading抛出了一个意外错误:错误:如果startAsync被提供,则需要AppLoading onError prop。你知道我应该在这里做什么吗?自从新的expo更新以来,这是我的异步语法吗?你能给我解释一下到底发生了什么吗?还有一些代码会很好:)我想出来了!我必须使用新应用程序的语法!我只需要添加onError={console.warn}。谢谢你的帮助!我很感激
{
"main": "node_modules/expo/AppEntry.js",
"scripts": {
"start": "expo start",
"android": "expo start --android",
"ios": "expo start --ios",
"web": "expo start --web",
"eject": "expo eject"
},
"dependencies": {
"expo": "~40.0.0",
"expo-splash-screen": "^0.8.1",
"expo-status-bar": "~1.0.3",
"react": "16.13.1",
"react-dom": "16.13.1",
"react-native": "https://github.com/expo/react-native/archive/sdk-40.0.1.tar.gz",
"react-native-web": "~0.13.12"
},
"devDependencies": {
"@babel/core": "~7.9.0"
},
"private": true
}