使用 intersection observer 延迟加载图片
如果您还没有看过,Paul Lewis 组织了一个令人敬畏的视频系列,演示如何构建媒体播放器以及拥有非常棒的特性的 Progressive Web Apps。他在YouTube上建立了一系列视频,这些视频是在他建立网站的每一部分的过程中发生的。观看开发者展示他们工作的视频绝对是我最喜欢学习新事物的方法之一!
就像 google 的做法一样
今年年初,我已经退出咨询公司并开始构建 GO2CINEMA - 一个 快速,简单和安全 的方式来预订英国的电影票的网站。我做了一个辉煌的工作,使其快速,简单和安全。在其中某个阶段,我一直痴迷于关键渲染路径的优化。⚡️
我已经使用 ūsus 解决了 HTML 的预渲染。ūsus 渲染单页应用程序(SPA)的 HTML,并内嵌了用于呈现页面的 CSS。但是,我并不喜欢在每个 HTML 文档内嵌 70 KB 的 css,特别是其中大部分是 CSS 类名。
如何优化使用了 Redux 的 react 应用程序并不是显而易见的。但实际上相当简单。这是一个简短的指南,以及一些例子。
当优化使用 Redux 的 react 应用程序时,我经常听到有人说 Redux 缓慢。在99%的情况下,性能不佳的原因(适用于任何其他框架)与不必要的渲染相关联,因为 DOM 更新是昂贵的!在本文中,您将学习如何在使用 Redux 绑定 react 时避免不必要的 render
。
通常,我们使用官方 react 绑定的 Redux 的 connect 高阶组件, 当您的 Redux store
更新时,react 组件就会更新。这是一个将组件包装在另一个组件中的函数,该组件订阅了 Redux store
中的更改,并渲染 store
,这就是它的子节点更新的原因。
在过去一年多,我们 Vixlet 的 web 团队已经着手于一个激动人心的项目:将我们的整个 web 应用迁移到 React
+ Redux
架构。对于整个团队来说,这是不断成长中的机会,在整个过程中,我们在这方面面临一些挑战。
因为我们的 web-app 可能有非常大的 feed 视图,包括成百上千的媒体、文本、视频、链接元素,我们花了相当多的时间寻找能充分利用 React
性能的方法。在这里,我们将分享我们这一路学到的一些经验教训。
声明:下面讲的做法和方法更适用于我们具体应用的性能需求。然而,像所有的开发者建议的那样,最重要的是要考虑到你的应用程序和团队的实际需求。React 是一个开箱即用的框架,所以你可能不需要像我们一样细致地优化性能。话虽如此,我们还是希望你能在这篇文章里找到一些有用的信息。