Taocarts前台基于Next.js开发,商品详情图、轮播图、详情素材图片体积过大,是海外站点加载缓慢的核心原因之一。原生图片无压缩、无格式转换、无自适应,海外弱网环境加载卡顿严重。本文利用Next.js内置Image组件,通过代码配置实现图片自动压缩、WebP格式转换、自适应设备尺寸、懒加载,无需第三方插件,极致优化图片加载速度。
全局图片优化配置,next.config.js核心配置:
typescript
/** @type {import('next').NextConfig} */
const nextConfig = {
// 开启图片优化
images: {
// 允许加载的图片域名
domains: ['taobao.com', '1688.com', 'your-cdn.com'],
// 自动转换WebP格式
format: ['image/webp'],
// 设备尺寸适配
deviceSizes: [640, 750, 828, 1080, 1200, 1920],
// 图片质量压缩
quality: 80
},
// 开启压缩
compress: true
}
module.exports = nextConfig
页面组件实战使用,商品图片自适应优化:
typescript
import Image from 'next/image';
// 商品图片组件
export default function GoodsImage({ imgUrl }) {
return (
<div className="goods-img">
<Image
src={imgUrl}
alt="goods"
width={400}
height={400}
// 懒加载
loading="lazy"
// 自适应填充
fill={false}
// 防止拉伸
style={{ objectFit: 'cover', borderRadius: '8px' }}
placeholder="blur"
blurDataURL="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg=="
/>
</div>
)
}
优化后所有图片自动压缩、格式转换为体积更小的WebP格式,移动端加载小尺寸图片,PC端加载高清图片,图片加载体积平均减少60%,海外首屏加载速度大幅提升,有效降低站点跳出率,优化谷歌SEO评分。