是否在同一文件中包含太多导入会减慢应用程序的本机响应速度

时间:2019-02-11 05:42:56

标签: react-native

我正在制作一个有很多屏幕的React Native应用程序,所以我在做的是在app.js文件中,我以return方法返回了一个名为AppNavigator.js的文件。在AppNavigator文件中,我已经导入了25个以上的屏幕,并且所有这些都在某些导航器中使用。我的意思是我的应用程序包括6个naviagtor,它们分别是stacknavigator和抽屉导航器。我主要使用一个stack Navigator,因为它是我的应用程序的起点。我启动应用程序,然后在花费太多时间后启动初始屏幕加载。所以我的问题是在同一文件中包含太多导入是否会使应用程序变慢?如果是,那么如何将所有导航器保留在项目结构中。我是本机开发的新成员,所以请明确我的概念。

2 个答案:

答案 0 :(得分:0)

好吧,导入这些屏幕对于导航器来说是必需的。

但我必须告诉您,您仅使用了 25个屏幕。 RN应用程序具有超过100个屏幕。

就我个人而言,我曾在一个项目中工作,该项目在单个堆栈导航器中有30多个屏幕, 所以这不是你的问题。

因为最终它们将捆绑为一个文件,即index.android.bundle。 因此无论您在哪里写入文件以及在哪里导入文件都将捆绑到index.android.bundle中。

是的,它会影响性能,但肉眼所见不多。

所以,这里的问题可能是

  1. 调试模式。

    尝试以生产模式运行(打开开发菜单->开发设置->禁用JS开发模式)

    生成已发布的已签名应用

  2. 白屏,然后飞溅一秒钟

    this可以解决

答案 1 :(得分:0)

您可以尝试以下操作: -如果您目前处于测试模式,并且正在远程调试js,请尝试先停止它并检查性能。

  • 卸载应用程序并运行以下命令

    cd(项目/ android文件夹的路径)&& gradlew clean && cd(项目根文件夹的路径)&& react-native软件包--platform android --dev false --entry-file index.js --bundle-output android / app / src / main / assets / index.android.bundle --assets-dest android / app / src / main / res && react-native run-android

上面的命令将清除所有最近的构建,并清除并清除所有缓存和给出新的构建。

你很好!