首页 > 解决方案 > 如何在 android 模拟器中观看而不在 react native 中运行编译命令?

问题描述

我已经多次更改我的代码。有没有像“npm run watch”这样的命令来观察实时变化并在 react-native for android 中编译代码和设计预览?

标签: react-native-androidwatch

解决方案


我假设您想要使用“实时重载”或热重载。

每次更新 Javascript 代码时,应用程序都会自动更新,无需手动重新加载。以下是启用方法以及有关差异的一些说明。

文档: http: //facebook.github.io/react-native/docs/debugging

访问应用内开发者菜单

您可以通过摇动设备或在 iOS 模拟器的硬件菜单中选择“摇动手势”来访问开发者菜单。⌘ + D当您的应用在 iOS 模拟器中运行时,或者⌘ + M在 Mac OS 和Ctrl+MWindows 和 Linux 上的 Android 模拟器中运行时,您也可以使用键盘快捷键。或者,对于 Android,您可以运行命令adb shell input keyevent 82打开开发菜单(82 是菜单键代码)。

重新加载 JavaScript

您无需在每次进行更改时都重新编译您的应用程序,而是可以立即重新加载应用程序的 JavaScript 代码。为此,请从开发人员菜单中选择“重新加载”。您也可以在 iOS 模拟器中按 ⌘R,或在 Android 模拟器上按两次 R。

自动重装

您可以通过在代码更改时自动重新加载应用程序来加快开发时间。可以通过从开发人员菜单中选择“启用实时重新加载”来启用自动重新加载。

您甚至可以更进一步,通过从开发人员菜单启用热重载,在您的文件的新版本自动注入 JavaScript 包时保持您的应用程序运行。这将允许您通过重新加载来保持应用程序的状态。

在某些情况下,热重载无法完美实现。如果您遇到任何问题,请使用完全重新加载来重置您的应用程序。

您需要重新构建您的应用程序以使更改在某些情况下生效:您已将新资源添加到本机应用程序的捆绑包中,例如 iOS 上的 Images.xcassets 或 Android 上的 res/drawable 文件夹中的图像。您修改了本机代码(iOS 上的 Objective-C/Swift 或 Android 上的 Java/C++)。


推荐阅读