Loader 函数返回的参数,用于组装最终加载的图片 URL。
类型
{ src: string; format: string; extra: { domain?: string; protocol?: ProtocolType; template?: string; suffix?: string; search?: string; origin: string; }; }
成员
名称 | 类型 | 描述 |
---|---|---|
src | string | 图片源 URL,满足公网可访问。不包含域名,例如 imagex-common/5b*******1b 。 |
图片 URL 生成函数。函数入参包含 domain, src, format 等参数,返回拼接处理参数后的 url。格式自适应依赖该函数实现。
说明
格式自适应:结合当前环境支持性以及 formats 属性中指定的格式列表,选择最优的格式传递至函数的入参 format,函数返回相应格式的图片 url。
类型
(props: IImageLoaderProps) => string
示例
const myLoader = ({ src, format }) => { return `//www.example.com/${src}~tplv-serviceid-image.${format}` }
SSR(服务端渲染)配置,该配置用于在 SSR 配置场景提升图片加载速度,参与了服务端渲染的图片需要配置该属性。
注意
CSR 场景,即客户端渲染场景下无需关注该配置。
类型
{ isSSR?: boolean; hybridRender?: boolean; platform?: typeof ValidPlatform[number]; }
成员
名称 | 类型 | 描述 |
---|---|---|
isSSR |
| 是否在服务器进行渲染图片。
|
hybridRender |
| 是否使用混合渲染。
说明 混合渲染是指在服务器端渲染和客户端渲染之间进行切换的一种渲染策略。 |
platform | "Android" | "iOS" | undefined | 当前所处的渲染平台,支持取值为 Android 或 iOS 。 |
类型:interface
同层渲染图片组件属性。
类型:string | number
图片渲染宽度,值类型与 css 的 width 一致。
类型:string | number
图片渲染高度,值类型与 css 的 height 一致。
类型:string
图片路径,可访问的图片 URL。
类型:IImageLoader
图片 URL 生成函数。
类型:("webp" | "avif" | "heic" | "jpeg" | "png")[] | undefined
自适应格式列表,结合 loader 方法实现格式自适应,在同层渲染场景下优先采用 heic 格式,不支持同层渲染时走格式自适应的方式。默认值为 ['heic', 'avif', 'webp']
。
heic
avif
webp
注意
['webp']
时,表示仅支持 webp 格式自适应,并以原图格式兜底;['heic', 'avif', 'webp']
时,表示优先 heic 格式自适应,其次是 avif、webp 格式自适应,最后用原图格式兜底。类型:IImageObjectFitValues | undefined
用于指定图片元素如何适应容器,与 css 属性 object-fit 相同。其中容器范围由 width、height 定义。
类型:string | undefined
圆角半径,支持以下两种类型:
类型:ISSRConfig | undefined
SSR(服务端渲染)配置。
用于指定图片元素如何适应容器,与 css 属性 object-fit 相同。
类型
'none' | 'contain' | 'cover' | 'fill'