搜索

首页  >  问答  >  正文

Expo无法加载字体

我一直在尝试在Expo中加载字体,但是我一直得到相同的错误。

这是我的代码:

我的Index.js如下所示:

import WelcomePage from "./Authentication/WelcomePage";

export default function Page() {

  return (
      <WelcomePage/>
  );
}

而我的Welcomepage看起来是这样的:

import {Link, useRouter} from "expo-router";
import {windowForm} from "../Design/WindowForm";
import {Button} from "react-native-paper";
import Styles from "../Design/styles";
import Constants from "expo-constants";
import {Inter_900Black, useFonts} from "@expo-google-fonts/inter";

const WelcomePage = () => {
    const router = useRouter()
    let [fontsLoaded] = useFonts({
        Inter_900Black,
    });

    if (!fontsLoaded) {
        return null;
    }
    return(
        <View style={{width: windowForm().at(0), height:windowForm().at(1)}}>
            <Text style={{fontFamily:'Inter_900Black'}}>
                Hey
            </Text>
        </View>
    )
}
export default WelcomePage

这是我一直得到的错误:

警告:React检测到WelcomePage中Hooks调用的顺序发生了变化。如果不修复,这将导致错误和bug。了解更多信息,请阅读Hooks的规则:https://reactjs.org/link/rules-of-hooks

包括以下内容:

之前的渲染

  1. useState
  2. useState
  3. useEffect
  4. undefined

下一个渲染

  1. useState
  2. useState
  3. useEffect
  4. useState

P粉805535434P粉805535434308 天前3904

全部回复(1)我来回复

  • P粉257342166

    P粉2573421662024-04-06 13:26:19

    感谢 Mike 'Pomax' Kamermans

    我已经弄清楚我应该先做一个 MCVE。这样我意识到问题不在于字体,而是关于我的 javascript windowForm().at(0) 在同一个 const 中被调用。

    我还不确定原因,但是当我将它们分开时,就没有报错了。一旦我了解更多,我会编辑这篇帖子。向Mike致敬。

    回复
    0
  • 取消回复