react-native 中“不存在捆绑 URL”是什么意思?

IT技术 ios reactjs react-native
2021-04-14 03:50:46

当我运行一个 react-native 项目时,我得到一个错误no bundle URL present,但我不知道我犯了什么错误,我很困惑。

在此处输入图片说明

6个回答

No bundle URL present通过以下方式解决错误

  • 在您的项目根目录中运行以下命令以删除 iOS 构建目录,并在重新构建之前终止其他 React Native 会话(假设它们在默认端口 8081 上运行):

rm -rf ios/build/; kill $(lsof -t -i:8081); react-native run-ios

  • 更新您的 React Native 工作流程以避免发生这些错误,方法是将上述命令组合组合成一个别名,并使用以下命令将其附加到您的 Bash 配置文件 .bashrc 中:

echo "alias rni=\"kill \$(lsof -t -i:8081); rm -rf ios/build/; react-native run-ios\"" >> ~/.bashrc; source ~/.bashrc

现在您可以使用简单的别名快捷方式运行 React Native iOS 构建(无需担心出现一些常见的红色错误屏幕):

rni

很高兴这是在第 2 500 页上的答案
2021-06-02 03:50:46
对我很有用。我唯一要做的另一件事就是退出模拟器,如果还没有关闭的话。
2021-06-15 03:50:46

我也刚遇到这个问题(第一次开始使用 React Native)。问题就消失了时-而在iOS模拟(react-native run-ios)正在运行-我跑npm install,然后react-native run-ios一次。在终端窗口中显示正在捆绑,然后模拟器显示欢迎屏幕。

react-native init PropertyFinder尝试使用检查此链接以获取摘要npm start(这个对我有用

================================================== ======================

16.9 更新

我的端口 8081 被 McAfee 阻止了。使用不同的端口直接不工作react-native start --port=8082react-native run-ios --port=8082

尝试了这里给出的几乎所有解决方案。但没有任何效果。

        "react": "16.9.0",
        "react-dom": "^16.12.0",
        "react-native": "0.61.5",

解决方案:

在 Xcode 中搜索 8081 并将它们全部替换为 8082。然后运行相同的命令来构建和运行应用程序。应用程序运行流畅

react-native start --port=8082
react-native run-ios --port=8082

在此处输入图片说明

@dcp 您是否尝试过在“react-native run-ios”已经启动的情况下多次运行它?似乎每次我启动我的应用程序时,我都需要至少执行两次(每次之间等待大约 2 分钟)。
2021-06-15 03:50:46
react-native run-ios --port=8082 为我工作!
2021-06-15 03:50:46
对我有用,但很想找到一个不每次都涉及此步骤的长期修复。
2021-06-16 03:50:46

当您不允许通过 localhost 进行不安全的连接,或者您试图通过 http 接受不安全的连接时,就会发生此问题。

要解决此问题,请将其添加到info.plist

<key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
        <key>NSAllowsArbitraryLoadsInWebContent</key>
        <true/>
        <key>NSAllowsLocalNetworking</key>
        <true/>
    </dict>
谢谢,一个很好的提醒,挽救了我的一天。然而,为了解决 No bundle URL present 问题,我们只需要前面评论中提到的 localhost 的 NSExceptionDomains。无需将 NSAllowsArbitraryLoads 设置为 true,因为它会完全关闭 ATS,并且在上传到 App Store 时您需要给 Apple 一个很好的理由。
2021-05-23 03:50:46
这家伙是什么英雄。让我和我的 macbook 免于跳出窗外!我已将异常域从localhostInfo.plist 中的本地网络地址更改为本地网络地址,因此无法解析。我为“本地主机”添加了一个块作为异常域并且它起作用了。
2021-06-03 03:50:46
<key>NSExceptionDomains</key> <dict> <key>localhost</key> <dict> <key>NSExceptionAllowsInsecureHTTPLoads</key> <true/> </dict> </dict> 为我工作,但同样的想法
2021-06-07 03:50:46
说真的,你的回答对我来说就像上帝一样......你摇滚的兄弟......我无话可说。谢谢你,我从星期四开始坚持下去。
2021-06-17 03:50:46

当我捆绑我的应用程序时遇到了同样的问题。检查您main.jsbundle的目标是否针对您的主要项目

作为我的 react-native 0.60 升级的一部分,这不知何故发生在我身上。
2021-06-03 03:50:46
我很高兴找到您的评论,谢谢,这正是我的问题。
2021-06-06 03:50:46
这也发生在我身上。但后来我点击了它。但还是同样的问题
2021-06-15 03:50:46
相同的视频链接,youtube.com/watch?v=eCs2GsWNkoo
2021-06-18 03:50:46

按照错误消息中的说明:

同意 Xcode/iOS 许可证需要管理员权限,请运行“sudo xcodebuild -license”,然后重试此命令。

运行以下命令有效:

sudo xcodebuild -license
tks 在终端中运行后,这对我有用,然后在 xcode 中构建
2021-06-05 03:50:46
不。仍然不适合我。我在不同的端口上运行,8081 被阻止
2021-06-08 03:50:46
我之前有一个 MacOS 更新,因为应用程序在更新后没有运行,并显示上述错误消息。这个解决方案就像一个魅力。
2021-06-15 03:50:46