SuperAPI AI 工具集

perf-web-optimization

前端与建站

查看项目

更新于 10-15 22:11

技能介绍

用途:该技能提供系统化的 Web 性能优化方法,流程为测量→定位→排序→实施→验证,用于解决站点变慢、缩减包体积、修复布局偏移等问题。

目标指标:给出 LCP、INP、CLS、TTFB 的“良好/待改进/较差”阈值,例如 LCP 良好为小于 2.5s,INP 良好为小于 200ms,CLS 良好为小于 0.1,TTFB 良好为小于 800ms。

主要能力与快速优化项:

  1. 图片(通常对 LCP 影响最大):首屏/LCP 图片使用 loading="eager" 与 fetchpriority="high",首屏以下使用 loading="lazy",并始终设置 width 和 height 防止 CLS。
  2. 字体:预连接字体源,使用非阻塞方式加载字体,并设置 display=swap。
  3. 第三方脚本(常见 INP 问题来源):延迟到用户交互或超时后再加载。
  4. 关键 CSS:在 head 内内联关键样式,其余样式延迟加载。

包体积分析:提供 Webpack 的 npx webpack-bundle-analyzer dist/stats.json、Vite 的 npx vite-bundle-visualizer,以及安装前用 npx bundlephobia <package-name> 检查包大小;并列出可替换的重型包,如 moment 换 date-fns 或 dayjs、lodash 改为按需引入或原生方法。

代码分割:给出 React lazy、Next.js dynamic、Vite/Rollup manualChunks 等模式。

缓存头:静态资源使用 Cache-Control: public, max-age=31536000, immutable,HTML 使用 no-cache,API 响应使用 private, max-age=0, must-revalidate。

测量与清单:运行审计、读取报告和设置预算建议使用 perf-lighthouse 技能;清单覆盖图片、JavaScript、CSS、字体四类检查项,如 bundle 小于 200KB gzip、按路由分割、无未使用依赖、字体子集化等。

详细示例:references/core-web-vitals.md 修复 LCP/CLS/INP,references/bundle-optimization.md 缩减 JS 包体积,references/image-optimization.md 图片格式、响应式图片与 sharp 脚本。

限制:资料未提供具体安装命令、收费方式、支持平台及实际效果数据,暂未提供。