React.lazy 会提高 React Native 的性能吗?

Posted

技术标签:

【中文标题】React.lazy 会提高 React Native 的性能吗?【英文标题】:Is React.lazy gonna improve React Native performance? 【发布时间】:2019-06-20 14:44:52 【问题描述】:

我想知道React.lazy 将如何提高 React-Native 应用程序的性能。

const Warning = React.lazy(() => import('./Warning'));
...

render() 
  return (
    ...
    
      this.state.count > 10 ? (
          <React.Suspense fallback=null>
            <Warning />
          </React.Suspense>
        ) : null
    
  )

我在 ReactJS 方面了解了上述 动态加载 webpack 包,我想知道它是否会在 React Native 方面有所帮助?

基本上我们将所有 JS 代码捆绑在一起并一起发送到用户设备,所有 JS 代码都已经存在,位于用户设备中。想知道React.lazy 将如何帮助提高性能,在什么意义上?

【问题讨论】:

我不指望它会改进任何东西,但如果没有基准,你无法确定。 如果即使从学术上讲成绩也不会提高,我想我会省去麻烦的。原因是我对webpack 还很陌生,并且仍在试图弄清楚bundle 的一般工作原理。无论如何感谢您的输入@estus! 【参考方案1】:

不,绝对不是。但它可能会改善您的应用程序的启动时间。 如果您有很多屏幕,那么如果没有延迟导入,您的应用启动时间会变慢。 在没有延迟导入和实施延迟导入之后检查您的应用启动时间。

【讨论】:

以上是关于React.lazy 会提高 React Native 的性能吗?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Gatsby 中使用 React.lazy

react s-s-r 与代码拆分而不是 React.Lazy 的优缺点

React中异步模块api React.lazy和React.Suspense

react懒加载(lazy, Suspense)

react懒加载(lazy, Suspense)

react懒加载(lazy, Suspense)