当我尝试在世博会中加载字体时,承诺拒绝

时间:2017-11-01 21:20:50

标签: react-native expo

我遇到了世博会的问题并且反应原生。当我尝试从assets文件夹 loadAsync 字体时,我收到此错误:

  

[未处理的承诺拒绝:错误:未找到字体/data/data/host.exp.exponent/cache/ExperienceData /.../ ExponentAsset-5868d2d7f28da04ee373451e87d682f8.ttf]

我在App.js中的代码

import React, { Component } from "react";
import { configureStore } from "./store.js";
import { Provider } from "react-redux";
import { AppLoading, Font } from 'expo';
import MainWrapper from './components/mainWrapper'

const store = configureStore();

export default class App extends Component {
  state = {
    appReady: false
  }
  loadAssets = async () => {
    await Font.loadAsync({
      'Arial': require('./assets/fonts/Arial.ttf')
    });
    this.setState({appReady: true});
  }
  componentDidMount() {
    this.loadAssets()
  }
  render() {
    return (
      <Provider store={store}>
        {this.state.appReady ?
          <MainWrapper />
        :
          <AppLoading />
        }
      </Provider>
    );
  }
}

我用

"expo": {
  "sdkVersion": "21.0.0"
}

我从Expo示例中获取的大部分App.js都有一些变化。您有什么想法我该如何解决此错误?

1 个答案:

答案 0 :(得分:0)

它被打破了 .ttf 文件。我从其他来源下载了正确的字体文件,我的问题已经解决。但是对于FontAwesome我会探索这个。