React Native / EXPO / iOS模拟器卡住了“下载Javascript捆绑包100%”

时间:2018-08-27 17:46:25

标签: xcode react-native ios-simulator

一周前,我安装了一个新软件包,我的iOS模拟器运行正常,但突然停止了加载。由于使用Material Icons和Expo,我遇到了“字体家族”问题。我记得曾尝试在Xcode上打开该项目,但发现了一个不需要Xcode的其他解决方案。我认为也许在Xcode中打开项目可能已经做了什么?

以下是我为解决此问题而尝试做的事情:

  • 删除iOS sim选项中的“内容和设置”。
  • 签出给Master,几周前签出给master
  • 还原所有更改并卸载软件包
  • 注意CreateChannelAndroidAsync黄色错误(这是唯一弹出但没有关联的错误)
  • 清除所有内容:watchman watch-del-all && rm -rf node_modules / && npm缓存验证&& npm install && npm start---reset-cache
  • 删除并重新安装XCode
  • 分支在我的同事的Mac上正常工作。
  • 尚未尝试:创建一个新项目。这是我下一步要做的。

关于从这里去哪里的任何建议?

1 个答案:

答案 0 :(得分:0)

在App.js中,我的loadAsyncs函数运行如下:

async _loadAssetsAsyncIos() {

    let loadFonts = await Expo.Font.loadAsync({
      Lato: require("./static/fonts/Lato-Regular.ttf"),
      LatoBold: require("./static/fonts/Lato-Bold.ttf"),
      Arial: require("./static/fonts/arial.ttf"),
      'Material Icons': require('@expo/vector-icons/fonts/MaterialIcons.ttf')
    });

    let loadImages = await preloadImages.map(image => {
      Expo.Asset.fromModule(image).downloadAsync()
    })

    let location = await getDeviceLocation()

    Promise.all([ loadFonts, loadImages, location ]).then((resp) => {
      return
    })
  }

我注释了let location,并在Promise中删除了location,现在它可以工作了!

这与定位服务有关。