react-native metro bundle卡住并且没有运行进度条

Posted

技术标签:

【中文标题】react-native metro bundle卡住并且没有运行进度条【英文标题】:react-native metro bundle stuck and not running progress bar 【发布时间】:2018-11-08 08:51:33 【问题描述】:

我在 iosandroid 上从事 react-native 项目。

在 IOS 上,metro bundler 控制台卡在

Metro Bundler ready.
Loading dependency graph, done.

即使经过长时间的延迟也没有任何反应。它应该执行以下操作:

Metro Bundler ready.
Loading dependency graph, done.
BUNDLE  [android, dev] ./index.android.js ░░░░░░░░░░░░░░░░ 0.0%       (0/1)Launching Dev Tools...
BUNDLE  [android, dev] ./index.android.js ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ 100.0% (982/982), done.
BUNDLE  [android, dev] ./index.android.js ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ 100.0% (1/1), done.

有什么想法吗?

我尝试删除 node_modules ,通过 Xcode 清理项目,运行“npm start”

【问题讨论】:

编辑在同一个wifi网络上连接电脑和手机也解决了这种问题 【参考方案1】:

我的 package.json 的脚本下有这句话。尝试使用npm run clear-all 运行它。

"clear-all": "watchman watch-del-all; rm -rf ./ios/build;  rm -rf ./ios/Pods; rm -rf $TMPDIR/react-*;rm -rf $TMPDIR/haste-*; rm -rf $TMPDIR/metro-*; rm -rf node_modules/; npm cache verify; npm install; npm start --reset-cache"

之后,您必须再次运行 pod installreact-native run-ios。让我知道这是否适合您。

【讨论】:

感谢您的帮助。我运行 clear-all(删除 watcham cmd,因为我不使用它)。我也不会使用 pod,我的 mac 上没有安装。 它让我在 node-modules/react-native/third-party/glog-0.3.4 中出错,c 编译器无法创建可执行文件。我必须运行“ cd node_modules/react-native/third-party/glog-0.3.5/ && ../../scripts/ios-configure-glog.sh”然后删除并重新添加 libfishhook.a 但是问题就在这里,metro 加载依赖图后什么都没有发生。【参考方案2】:

我找到了让它工作的方法。 我从事的项目是一年半前使用 xcode 9 开始的。xcode 10 改变了处理编译的方式。 您可以将其配置为使用 xcode 9 传统方式(我不知道这有什么不好的方面)

 In Xcode -> file -> project setting 

 for  "pre user projects settings" choose "legacy build system"

编辑:将手机和电脑连接到同一个 wifi 使其也可以工作(或使用笔记本电脑创建热点)

【讨论】:

以上是关于react-native metro bundle卡住并且没有运行进度条的主要内容,如果未能解决你的问题,请参考以下文章

Metro server (run ‘react-native start‘) or that your bundle ‘index.android.bundle‘ is packaged corre

Metro server (run ‘react-native start‘) or that your bundle ‘index.android.bundle‘ is packaged corre

Metro server (run ‘react-native start‘) or that your bundle ‘index.android.bundle‘ is packaged corre

无法解析模块“metro/src/lib/bundle-modules/HMRClient”

React-Native Metro 捆绑器无法提供任何文件

在 react-native 项目中找不到 metro-config node_modules