恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

Arco Design Image 图片组件完全指南:展示、懒加载与多图预览实战

  • 首页
  • 资讯中心
  • /
  • Arco Design Image 图片组件完全指南:展示、懒加载与多图预览实战

相关资讯

考虑分时电价与用户负荷互动的光储充换电站优化模型解析 2026/10/13 12:16:30
Windows环境下SonarQube与Sonar Scanner代码质量平台搭建实战 2026/10/13 12:16:29
Sublime Text配置Python环境:手写构建系统详解 2026/10/13 12:16:29

最新资讯

Scikit-Learn线性回归从API到实战:参数调优与踩坑全解析
Excel VBA批量地址解析:手填订单地址自动拆分省市区的实用方案
SQL考勤分析:从混乱打卡数据提取准确上下班时间
B2B2C原型图设计:用状态机与角色泳道图验证三方协同
色彩规范落地指南:从团队协作到对比度检查的完整推演
企业级网站架构实战:从单机到高可用集群的Linux部署指南

今日推荐

ESP32舵机控制全攻略:从PWM原理到高级玩法与常见故障排查
CAN总线原理与STM32实战:抗干扰、仲裁、错误处理全解析
CAN总线错误处理机制深度解析:从位错误到Bus Off的硬件级调试

本周热门

UE动画修改实战:从资产编辑到重定向与蒙太奇驱动
统计随机数生成器攻击下的KLJN安全密钥交换协议Matlab仿真
政务API安全治理:资产测绘、低代码编排与行标对标实践

本月精选

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)

Arco Design Image 图片组件完全指南:展示、懒加载与多图预览实战

发布时间:2026/10/13 12:21:30
Arco Design Image 图片组件完全指南:展示、懒加载与多图预览实战 UI组件前端设计系统【免费下载链接】arco-designA comprehensive React UI components library based on Arco Design项目地址https://gitcode.com/gh_mirrors/ar/arco-design点击查看免费下载Arco Designarco-design/web-react的 Image 组件用于展示和预览图片是数据展示场景中最常用的基础组件之一。本文以仓库内 Image 组件文档 为主体结合 组件源码、演示示例 与 测试用例系统讲解 Image 的属性体系、预览交互、多图预览、懒加载与自定义控制条等能力。读完本文你将能独立完成单图/多图预览、渐进加载、懒加载以及个性化预览工具栏的完整落地。一、组件定位与基础用法Image 归属于 Arco Design 的数据展示组件分类见 README.zh-CN.md 头部说明。它的核心职责是展示图片并提供开箱即用的预览能力只要设置src属性点击图片即可触发预览弹层。从源码看Image 组件实际是一个复合组件index.tsx由三个子组件构成子组件源码文件用途Imageimage.tsx图片展示本体Image.Previewimage-preview.tsx单图预览弹层Image.PreviewGroupimage-preview-group.tsx多图预览容器1.1 最简用法参考 基础用法演示只需设置src即可获得一个自带预览功能的图片组件import { Image } from arco-design/web-react; function App() { return ( Image width{200} src//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp altlamp / ); } export default App;1.2 尺寸与原生属性透传width/height可传string | number会被直接应用到图片的宽高同时透传到根容器与img标签上image.tsx。Image 的属性类型继承了OmitImgHTMLAttributesHTMLImageElement, classNameinterface.ts因此原生img属性如alt、title、onMouseEnter等都可以直接透传。测试用例也验证了title、onLoad、onMouseEnter等原生属性的透传行为index.test.tsx。二、图片信息区Caption与 Footer通过title和description可以将图片的标题与描述展示在图片内部或底部展示位置由footerPosition控制默认值为inner覆盖在图片上。参考 显示 Caption 演示import { Image, Space } from arco-design/web-react; function App() { const src //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp; const title A user’s avatar; const description Present by Arco Design; return ( Space size{60} alignstart {/* 默认 inner标题描述覆盖在图片内部 */} Image width{200} src{src} title{title} description{description} altlamp / {/* outer信息区渲染在图片底部 */} Image width{200} src{src} title{title} description{description} footerPositionouter altlamp / /Space ); }源码机制Footer 的显隐由 useShowFooter.ts 判定——只要title/description/actions任一存在就渲染 Footerimage-footer.tsx 负责将 caption标题描述与操作按钮区组装为arco-image-footer。同时 image.tsx 会根据footerPosition追加-with-footer-inner或-with-footer-outer类名以控制布局样式。注意Footer 仅在图片加载完成后渲染isLoaded showFooter。补充开启simple简洁模式后description描述将不再显示详情见后文额外操作章节。三、加载状态、错误状态与渐进加载3.1 加载状态loader默认情况下加载效果是不显示的可通过loader{true}显示默认加载动画旋转图标 Loading 文字。若默认效果不满足需求可通过loaderClassName覆盖加载区域样式或直接传一个 ReactNode 作为加载过渡内容。参考 加载状态演示import React from react; import { Image, Button, Space } from arco-design/web-react; function App() { const [timestamp, setTimestamp] React.useState(); return ( div Button typeprimary onClick{() setTimestamp(Date.now())} style{{ marginBottom: 20 }} reload /Button Space size{20} {/* loadertrue 显示默认加载效果 */} Image width{200} height{200} src{//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp?timestamp${timestamp}} loader{true} altlamp1 / {/* loaderClassName 自定义加载样式渐变扫光动画 */} Image width{200} height{200} src{//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp?timestamp${timestamp}} loaderClassNameimage-demo-loader-animate altlamp2 style{{ marginLeft: 67 }} / /Space /div ); }配套的扫光动画 CSS.image-demo-loader-animate { background: linear-gradient( -60deg, var(--color-fill-2) 25%, var(--color-neutral-3) 40%, var(--color-fill-3) 55% ); background-size: 400% 100%; animation: image-demo-loader-circle 1.5s cubic-bezier(0.34, 0.69, 0.1, 1) infinite; } keyframes image-demo-loader-circle { 0% { background-position: 100% 50%; } 100% { background-position: 0 50%; } }3.2 渐进加载Progressive Loading大图场景可以通过给loader传一张小尺寸模糊图在原图加载完成前先展示从而模拟渐进加载体验。参考 渐进加载演示import React from react; import { Image, Button } from arco-design/web-react; function App() { const [timestamp, setTimestamp] React.useState(); return ( div Button typeprimary onClick{() setTimestamp(Date.now())} style{{ marginBottom: 20 }} reload /Button Image width{200} src{//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp?timestamp${timestamp}} loader{ img width{200} src//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp style{{ filter: blur(5px) }} / } altlamp / /div ); }3.3 错误状态error当图片加载失败时默认显示一个关闭图标 alt文本默认错误节点见 image.tsxalt在错误态展示的增强来自 2.3.1 版本。可通过error属性传入自定义错误内容也可通过onError监听失败事件。参考 错误状态演示import { Image, Space } from arco-design/web-react; function App() { return ( Space size{20} Image width{400} height{300} srcsome-error.png altsome-error / {/* 长 alt 文本会在错误状态下完整展示 */} Image width{400} height{300} srcsome-error.png altThis is a picture of humans eating ice cream. ... / /Space ); }状态机实现Image 的加载状态由 useImageStatus.ts 管理完整状态包括beforeLoad初始、loading加载中、loaded成功、error失败、lazyload视口外等待加载。image.tsx 中img的onLoad/onError会驱动状态流转并触发用户传入的onLoad/onError回调。测试用例通过模拟error事件断言.arco-image-error节点的出现与消失index.test.tsx。四、懒加载lazyloadlazyload属性v2.47.0 起可开启懒加载图片只有进入视口viewport时才真正发起请求。该属性基于IntersectionObserver API实现类型为boolean | IntersectionObserverInit传对象时可配置观察参数如threshold。参考 懒加载演示import { Image, Space, Skeleton } from arco-design/web-react; const imageSize { width: 380, height: 150 }; const srcList [ //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/volcengine-solutions-medical.png~tplv-uwbnlip3yd-png.png, //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/volcengine-solutions-automotive.png~tplv-uwbnlip3yd-png.png, //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/volcengine-solutions-tourism.png~tplv-uwbnlip3yd-png.png, //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/volcengine-solutions-finance.png~tplv-uwbnlip3yd-png.png, ]; function App() { return ( Space directionvertical size{50} classNameimage-demo-wrapper {srcList.map((src, key) ( Image key{key} {...imageSize} src{src} altlamp lazyload{{ threshold: 0.5 }} loader{Skeleton image{{ style: imageSize }} text{false} animation /} / ))} /Space ); }源码机制image.tsx 通过useInView来自 components/_util/hooks/useInView.ts监听img元素是否进入视口懒加载开启时src不会直接写入img标签而是等inView为true时才动态赋值image.tsx。这一设计同时避免了 SSR 下开启lazyload首次渲染裂图的问题见 变更日志 2.53.1 版本。五、单图预览Image.Preview默认情况下preview为true点击图片即可打开预览弹层。预览弹层的所有细节配置通过previewProps类型为PartialImagePreviewProps传入。5.1 独立使用 PreviewImage.Preview也可以脱离 Image 单独使用需要配置必填的src并通过visible与onVisibleChange受控管理显隐。参考 单独使用预览组件演示import React from react; import { Image, Button } from arco-design/web-react; function App() { const [visible, setVisible] React.useState(false); return ( div Button typeprimary onClick{() setVisible(true)} Click me to preview image /Button Image.Preview src//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp visible{visible} onVisibleChange{setVisible} / /div ); }5.2 指定挂载节点预览弹层默认挂载到document.body可通过getPopupContainer指定父级节点v2.16.0 起适合需要将预览限制在某个容器内的场景。参考 挂载节点演示import React from react; import { Image } from arco-design/web-react; const wrapperStyle { width: 100%, height: 400, backgroundColor: var(--color-fill-2), position: relative, overflow: hidden, lineHeight: 400px, textAlign: center, }; function App() { const ref React.useRef(); return ( div style{wrapperStyle} ref{ref} Image width{200} previewProps{{ getPopupContainer: () ref.current, // 预览挂载到容器内部 closable: false, // 同时隐藏关闭按钮 }} src//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp altlamp / /div ); }5.3 预览交互能力一览预览弹层内置了完整的图片操作能力默认操作条定义见 image-preview.tsx缩放工具栏 鼠标滚轮缩放滚轮缩放来自 2.45.2 优化缩放百分比按scales数组步进默认[25, 33, 50, 67, 75, 80, 90, 100, 110, 125, 150, 175, 200, 250, 300, 400, 500]若不包含100%会自动插入到最相邻位置实现见 getScale.ts。旋转每次旋转 90°ROTATE_STEP 90image-preview.tsx支持向左/向右。全屏按容器尺寸计算最大适配缩放比。拖拽平移按住鼠标左键拖拽移动图片缩放与移动过程中可通过resetTranslatev2.61.0默认true开启位置修正由 getFixTranslate.ts 保证图片边缘不越出可视容器。键盘快捷键v2.55.0 起 PreviewGroup 也支持ESC关闭、←/→切换图片、↑/↓缩放按键处理见 image-preview.tsx。关闭方式点击 maskmaskClosable默认true、点击右上角关闭按钮closable默认true、按ESCescToExit默认truev2.24.0 起。窄屏适配当预览区域宽度小于breakPoint默认316时工具栏自动切换为simple紧凑模式操作项收进下拉框。5.4 自定义图片渲染与额外节点v2.58.0 起imageRender允许自定义预览中img元素的渲染接收原始 ReactElement 返回自定义节点v2.39.0 起的imgAttributes可将属性透传至预览弹窗中的img标签排除srcv2.53.0 起的extra可在预览区域追加自定义节点。六、多图预览Image.PreviewGroupImage.PreviewGroup从 v2.14.0 开始支持用于多图预览。预览弹层内提供左右切换箭头与图片序号切换时默认重置缩放/旋转/位移状态。6.1 包裹式用法用Image.PreviewGroup包裹一组Image组件即可。参考 多图预览演示import { Image, Space } from arco-design/web-react; function App() { const srcList [ //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp, //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/e278888093bef8910e829486fb45dd69.png~tplv-uwbnlip3yd-webp.webp, //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/3ee5f13fb09879ecb5185e440cef6eb9.png~tplv-uwbnlip3yd-webp.webp, //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/8361eeb82904210b4f55fab888fe8416.png~tplv-uwbnlip3yd-webp.webp, ]; return ( div Space directionvertical {/* infinite首尾循环切换 */} Image.PreviewGroup infinite Space {srcList.map((src, index) ( Image key{index} src{src} width{200} alt{lamp${index 1}} / ))} /Space /Image.PreviewGroup /Space /div ); }源码机制PreviewGroup 通过 previewGroupContext.ts 向子 Image 提供注册能力。子 Image 挂载时调用registerPreviewUrl(id, src, preview)收集图片地址、registerPreviewProps(id, previewProps)收集各自的预览配置image.tsxPreviewGroup 内部用loopImageIndex递归遍历子节点、按出现顺序自动分配_indeximage-preview-group.tsx。点击任意子图片时会先setCurrentIndex(id)再打开预览image.tsx。6.2 srcList 直传模式与独立使用Image.PreviewGroup也可以单独使用通过srcList直接传入图片地址数组一旦设置srcList将不再收集子 Image 组件的信息并通过visible/onVisibleChange控制显隐。展示起始图有两种方式非受控defaultCurrent指定第一张展示的图片下标受控currentonChange控制当前展示下标。参考 单独使用多图预览组件演示import React from react; import { Image, Button } from arco-design/web-react; function App() { const [visible, setVisible] React.useState(false); const srcList [ //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp, //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/e278888093bef8910e829486fb45dd69.png~tplv-uwbnlip3yd-webp.webp, //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/3ee5f13fb09879ecb5185e440cef6eb9.png~tplv-uwbnlip3yd-webp.webp, //p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/8361eeb82904210b4f55fab888fe8416.png~tplv-uwbnlip3yd-webp.webp, ]; return ( div Button typeprimary onClick{() setVisible(true)} Click me to preview multiple image /Button Image.PreviewGroup srcList{srcList} visible{visible} onVisibleChange{setVisible} / /div ); }6.3 预览顺序修正与预加载indexv2.23.0 起在复杂嵌套结构下若多图预览顺序异常可对单个Image手动指定预览序号。源码中index/_index会直接作为注册 id 使用image.tsx。forceRenderv2.58.0 起是否渲染图片列表用于提前加载图片。实现中会将收集到的可预览地址渲染进一个display: none的隐藏容器内触发预加载image-preview-group.tsx。infinite是否无限循环切换关闭后首尾箭头会自动禁用见 image-preview-arrow.tsx。七、自定义预览控制条actions 与 actionsLayout预览弹层底部默认控制条包含全屏、右旋、左旋、放大、缩小、原始尺寸依次对应fullScreen/rotateRight/rotateLeft/zoomIn/zoomOut/originalSize。通过actionsLayout可以调整顺序、过滤按钮只有出现在actionsLayout中的按钮才会展示其中extra占位符代表actions中传入的自定义操作按钮actions中的key也可以单独放入actionsLayout参与排序。参考 自定义预览控制条演示import { Image, Tooltip, Space } from arco-design/web-react; import { IconDownload, IconInfoCircle } from arco-design/web-react/icon; function App() { return ( Image width{200} src//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp previewProps{{ actions: [ { key: download, content: IconDownload /, name: Download, }, { key: info, content: IconInfoCircle /, name: Info, getContainer: (action) { return Tooltip contentA user’s avatar{action}/Tooltip; }, }, ], // info 自定义按钮排在最前未列出的 fullScreen/originalSize 等被过滤 actionsLayout: [info, rotateRight, zoomIn, zoomOut, extra], }} altlamp / ); }排序与过滤的实现image-preview-toolbar.tsx先按actionsLayout的 key 集合过滤默认按钮与自定义按钮再按其在actionsLayout中的下标排序如果布局中包含extra自定义 actions 中未被显式列出的按钮会整体插入extra所在位置。ImagePreviewActionProps 说明自定义操作项类型ImagePreviewActionProps的字段参数名描述类型默认值disabled是否禁用boolean-key唯一标识string(必填)-name名称非 simple 模式下以 Tooltip 展示string-content内容ReactNode(必填)-className节点类名string | string[]-style节点样式CSSProperties-getContainer自定义外围元素包装函数。注意设置了getContainer后显示name的 Tooltip 将失效(actionElement: ReactNode) ReactNode-完整定义见 interface.ts。八、图片底部额外操作actions 与 simple 模式图片本身非预览弹层也支持在底部信息区添加操作按钮通过actions类型ReactNode[]设置默认水平排列。当操作按钮较多时可开启simple简洁模式把按钮收入下拉框中——但在simple模式下描述description将不显示。参考 额外操作演示import React from react; import { Image, Tooltip, Space } from arco-design/web-react; import { IconEye, IconDownload, IconInfoCircle } from arco-design/web-react/icon; function DemoImage(props) { const [visible, setVisible] React.useState(false); return ( Image src//p1-arco.byteimg.com/tos-cn-i-uwbnlip3yd/a8c8cdb109cb051163646151a4a5083b.png~tplv-uwbnlip3yd-webp.webp titleA user’s avatar descriptionPresent by Arco Design actions{[ button key1 classNameimage-demo-action-item onClick{(e) setVisible(true)} IconEye / /button, button key2 classNameimage-demo-action-item onClick{(e) console.log(download)} IconDownload / /button, Tooltip key3 contentA user’s avatar button classNameimage-demo-action-item IconInfoCircle / /button /Tooltip, ]} previewProps{{ visible, onVisibleChange: (e) setVisible(false), }} {...props} / ); } function App() { return ( div Space size{20} alignstart DemoImage width{300} altlamp1 / {/* simple 模式操作按钮收进下拉框 */} DemoImage width{200} simple{true} altlamp2 style{{ verticalAlign: top }} / /Space /div ); }源码机制actions的渲染位于 image-footer.tsx。默认模式下按钮逐个水平排列simple模式下通过TriggerForToolbar基于 Trigger 组件包装为下拉触发。测试用例验证了.arco-image-actions-item的渲染及按钮点击回调index.test.tsx。九、完整 API 参数参考以下参数表完整摘录自 Image 组件文档与 interface.ts 类型定义一一对应。9.1 Image参数名描述类型默认值版本preview是否开启预览booleantrue-simple是否开启简洁模式boolean--index使用Image.PreviewGroup包裹时的预览索引一般不用指定当多图预览顺序出现问题时可手动指定当前image的预览顺序number-2.23.0description描述string--src图片获取地址string--title标题string--footerPosition底部显示的位置inner | outerinner-errorerror 状态下显示的内容ReactNode--loader加载过渡效果为 true 显示默认加载效果boolean | ReactNode--actions额外操作ReactNode[]--className节点类名string | string[]--height图片显示高度string | number--lazyload开启懒加载基于 IntersectionObserver APIboolean | IntersectionObserverInit-2.47.0loaderClassNameloader 的样式将覆盖默认过渡效果string | string[]--onError图片加载失败时触发(ev: SyntheticEventHTMLImageElement) void--onLoad图片加载完成时触发(ev: SyntheticEventHTMLImageElement) void--previewProps预览的配置项所有选项都是可选的类型为PartialImagePreviewPropsPartialImagePreviewProps--style节点样式CSSProperties--width图片显示宽度string | number--9.2 Image.Preview参数名描述类型默认值版本closable是否显示关闭按钮booleantrue2.16.0defaultVisible默认是否可见非受控boolean--escToExit按ESC键关闭预览booleantrue2.24.0maskClosable点击 mask 是否触发关闭booleantrue-resetTranslate开启位置修正booleantrue2.61.0visible是否可见受控属性boolean--breakPoint触发 toolbar 切换为 simple 模式的宽度number316-src图片获取地址在 Image 中默认是 Image 的 srcstring(必填)--imgAttributes图片属性透传至预览弹窗中的img标签上OmitImgHTMLAttributesHTMLImageElement, src-2.39.0extra自定义图片预览区域的额外节点ReactNode-2.53.0actions额外操作ImagePreviewActionProps[]--actionsLayout控制条的布局string[][fullScreen, rotateRight, rotateLeft, zoomIn, zoomOut, originalSize, extra]-className节点类名string | string[]--scales预览缩放使用的百分比数组。若不包含100%会自动添加在最相邻的位置number[][25, 33, 50, 67, 75, 80, 90, 100, 110, 125, 150, 175, 200, 250, 300, 400, 500]2.30.0style节点样式CSSProperties--getPopupContainer弹出层挂载的节点() HTMLElement() document.body2.16.0imageRender自定义 IMG 元素的渲染(originalNode: ReactElement) ReactNode-2.58.0onVisibleChange切换可见状态触发的事件(visible: boolean, preVisible: boolean) void--9.3 Image.PreviewGroup从 v2.14.0 开始支持。除下列专属参数外PreviewGroup 还继承了 Preview 的全部配置项closable、escToExit、maskClosable、resetTranslate、breakPoint、imgAttributes、extra、actions、actionsLayout、scales、getPopupContainer、imageRender等见 README.zh-CN.md。参数名描述类型默认值版本defaultVisible默认是否可见非受控boolean--visible是否可见受控属性boolean--forceRender是否渲染图片列表用于提前加载图片boolean-2.58.0infinite是否无限循环boolean--current当前展示的图片的下标受控属性number--defaultCurrent第一张展示的图片的下标number--srcList图片列表设置了本属性之后将不再收集 Image 子组件的图片信息string[]--style节点样式CSSProperties--onChange切换图片触发的事件(index: number) void--onVisibleChange切换可见状态触发的事件(visible: boolean, preVisible: boolean) void--十、版本演进与已知行为提示结合 Image 组件变更日志使用时有几点值得留意关闭按钮冒泡2.66.15Image.Preview关闭按钮的 click 事件已做stopPropagation处理避免误触父元素 click。缓存加载2.61.0 / 2.29.1图片命中浏览器内存缓存时曾出现一直 loading 的问题已修复若依赖onLoad做业务处理可留意这一历史行为。previewProps 动态更新2.48.1previewProps字段更新后 UI 不刷新的 bug 已修复受控场景可放心使用。SSR 兼容2.15.0 / 2.53.1组件支持服务端渲染开启lazyload时首帧裂图问题已修复。键盘方向键2.55.0PreviewGroup 支持←/→切换图片↑/↓缩放。未传 src2.52.1避免控制台 404 报错未传src时不会渲染src属性。结语Arco Design 的 Image 组件从展示图片这一基础诉求出发提供了完整的加载/错误/懒加载状态管理以及可深度定制的单图与多图预览交互。日常使用中只需记住几个关键组合srcpreviewProps完成单图预览定制Image.PreviewGroupsrcList或子 Image 收集完成多图预览loaderlazyload优化大图列表页体验actionsLayoutactions重塑预览控制条。更多交互细节可继续阅读仓库中的 12 个官方演示 与 测试用例 验证具体行为。赞分享UI组件前端设计系统【免费下载链接】arco-designA comprehensive React UI components library based on Arco Design项目地址https://gitcode.com/gh_mirrors/ar/arco-design点击查看免费下载相关推荐Arco Design Image 组件完整技术指南图片展示、懒加载与多图预览的演进与实践Arco Design Image 组件完整技术指南图片展示、懒加载与多图预览的演进与实践 图片展示是任何中后台 UI 库都绕不开的基础能力而 Arco DUI组件前端设计系统基于真题考频统计的408考研完整复习策略14年真题高频考点精准定位基于真题考频统计的408考研完整复习策略14年真题高频考点精准定位 本仓库的历年真题考频统计表覆盖2009到2022共14年408统考真题计算机组成原理的UI组件前端设计系统ant-design-vue Image 组件完全指南可预览图片的加载、容错与多图预览实战ant design vue Image 组件完全指南可预览图片的加载、容错与多图预览实战 导读 a image 是 ant design vue 提供的 可前端UI组件设计系统上一篇CANN/ge获取告警信息V3下一篇Backbone-Debugger常见问题解答从安装失败到Backbone检测问题全解决创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号