懒加载会推迟下载某样东西,直到它真正被需要——通常是当它即将滚动进入视口时。这会缩小初始负载,让页面可见部分加载得更快。
懒加载图片
浏览器用一个属性就能原生做到:
html
始终保留 width/height,让浏览器预留空间(避免布局偏移)。绝不要懒加载你的 LCP 图片——那会延迟正在被测量的那个东西。
把繁重或很少使用的 UI(模态框、图表)拆分成一个按需加载的独立 chunk:
// Instead of a static import that ships in the main bundle:
const Chart = React.lazy(() => import("./Chart")); // separate chunk, fetched when rendered
<Suspense fallback={<Spinner />}>
<Chart data={data} />
</Suspense>
动态 import() 告诉打包器创建一个独立文件,只在 <Chart> 首次渲染时才下载。
对于一个繁重的页面,懒加载是最简单、杠杆率最高的胜利:预先要下载的东西更少,意味着更快的 LCP 和更少需要解析的 JS。面试官想看到你不去懒加载主图——那是一个会损害你本想帮助的指标的经典错误。