VKUI 7.2.0版本发布:全新组件与RTL支持全面升级
项目简介
VKUI是VK公司(俄罗斯最大的社交网络平台)开发的一套React UI组件库,专为构建现代化的Web应用程序而设计。它提供了丰富的UI组件和工具,帮助开发者快速构建符合VK设计语言的用户界面。VKUI以其高性能、可访问性和对移动设备的友好支持而闻名,广泛应用于VK生态系统中的各种产品。
全新组件登场
CellButtonGroup组件
在7.2.0版本中,VKUI引入了一个实用的新组件——CellButtonGroup。这个组件专门用于将多个CellButton(单元格按钮)组合在一起,形成逻辑上的按钮组。这种设计模式在移动应用中非常常见,特别是在设置页面或需要呈现多个相关操作的场景中。
CellButtonGroup不仅提供了视觉上的分组效果,还确保了组内按钮之间的一致间距和样式协调。开发者现在可以轻松创建出符合VK设计规范的按钮组,而无需手动处理边距和边框等样式细节。
DirectionProvider组件
另一个重要的新增组件是DirectionProvider,它为应用程序提供了更灵活的文字方向控制。在全球化应用中,支持从右到左(RTL)的布局至关重要,特别是对于阿拉伯语、希伯来语等语言的用户。
DirectionProvider允许开发者在组件树的任何层级覆盖默认的文本方向设置,使得局部RTL支持成为可能。这意味着即使整个应用采用LTR(从左到右)布局,特定部分仍然可以独立设置为RTL模式,为多语言应用开发提供了更大的灵活性。
RTL支持全面增强
7.2.0版本在RTL(从右到左)支持方面做出了重大改进,涵盖了多个核心组件:
- Avatar:修复了AvatarBadge在RTL模式下的显示问题
- CardScroll:新增完整的RTL支持
- Cell:优化了RTL布局下的显示效果
- Gallery:实现了RTL兼容性
- Pagination:修正了RTL模式下的分页控件布局
- PanelHeaderButton:特别是PanelHeaderBack预设按钮,现在在RTL模式下显示正确
- HorizontalScroll:新增RTL滚动支持
- Search:全面支持RTL布局
- SegmentedControl:改进了RTL模式下的分段控件行为
- Snackbar:支持RTL消息显示
- Slider:实现了RTL滑动方向
- Switch:优化了RTL模式下的开关控件
这些改进使得VKUI在RTL语言环境下的表现更加自然和专业,为国际化应用开发提供了更好的基础。
组件功能增强
模态对话框改进
ModalCard和ModalPage组件都新增了outsideButtons属性,允许在紧凑模式下在关闭按钮后显示额外的操作按钮。这种设计模式在移动端非常实用,可以在不占用主要内容空间的情况下提供辅助功能。
同时,ModalCard还新增了restoreFocus属性,开发者现在可以控制模态关闭后是否恢复之前的焦点位置,这对于无障碍访问和用户体验都有重要意义。
搜索组件增强
Search组件新增了两个实用的测试属性:clearButtonTestId和findButtonTestId。这些属性为端到端测试提供了更可靠的定位方式,使得自动化测试更加稳定。
工具提示灵活性提升
Tooltip组件现在支持设置自定义的锚点元素,这意味着开发者可以更灵活地控制工具提示的显示位置和触发条件。此外,Tooltip现在也支持直接传递纯文本作为children,简化了简单提示的实现方式。
日期输入功能扩展
DateInput组件新增了多个实用功能:
- renderCustomValue属性允许根据输入值显示自定义文本
- defaultValue属性支持非受控组件模式
- timezone属性支持指定时区显示
这些改进使得日期输入处理更加灵活,能够满足更复杂的业务场景需求。
滚动控制增强
新增的useScroll钩子提供了手动控制AppRoot中ScrollContext的能力,为开发者提供了更精细的滚动行为控制选项。
无障碍访问改进
多个组件在无障碍访问方面有所增强:
- ModalCardBase新增titleId属性,改善屏幕阅读器支持
- 修复了disabled状态下链接的可访问性问题
- Card和CardGrid组件改进了屏幕阅读器的识别
性能优化与问题修复
7.2.0版本也包含了一系列性能优化和问题修复:
- 修复了Textarea在disabled状态下无法滚动的问题
- 解决了Snackbar中长文本溢出的问题
- 优化了CustomSelect在异步加载选项时的性能
- 修复了DateInput和DateRangeInput中日历位置频繁变化的问题
- 改进了Avatar.Overlay在初始渲染时的性能
- 优化了AppRoot中的滚动锁定机制,现在作用于html元素
开发者体验提升
本次更新还包括多项改善开发者体验的改进:
- 新增stylelint-config-recess-order插件,统一样式排序规范
- 导出useFocusVisible钩子,方便自定义焦点样式
- 改进Flex组件的gap继承行为
- 优化ContentCard的图片显示控制
- 完善了TypeScript类型定义,如导出AlertActionProps类型
文档与示例增强
VKUI的文档系统也获得了显著改进:
- Storybook新增多个实用插件,包括控制台日志、源代码链接、设计稿查看等功能
- 新增"Components Overview"和"Icons Overview"概览页面
- 更新了多个组件的示例,特别是改进无障碍访问的示例
- 修正了文档中的描述错误和拼写问题
总结
VKUI 7.2.0版本带来了多项重要更新,从全新的组件到全面的RTL支持,从功能增强到性能优化,都体现了VK团队对产品质量和开发者体验的持续关注。这些改进使得VKUI在现代Web应用开发中更具竞争力,特别是在需要国际化支持和无障碍访问的场景下。
对于正在使用或考虑使用VKUI的开发者来说,7.2.0版本无疑提供了更强大、更灵活的工具集,能够帮助构建更专业、更易用的用户界面。
- QQwen3-Next-80B-A3B-InstructQwen3-Next-80B-A3B-Instruct 是一款支持超长上下文(最高 256K tokens)、具备高效推理与卓越性能的指令微调大模型00
- QQwen3-Next-80B-A3B-ThinkingQwen3-Next-80B-A3B-Thinking 在复杂推理和强化学习任务中超越 30B–32B 同类模型,并在多项基准测试中优于 Gemini-2.5-Flash-Thinking00
GitCode-文心大模型-智源研究院AI应用开发大赛
GitCode&文心大模型&智源研究院强强联合,发起的AI应用开发大赛;总奖池8W,单人最高可得价值3W奖励。快来参加吧~0266cinatra
c++20实现的跨平台、header only、跨平台的高性能http库。C++00AI内容魔方
AI内容专区,汇集全球AI开源项目,集结模块、可组合的内容,致力于分享、交流。02- HHunyuan-MT-7B腾讯混元翻译模型主要支持33种语言间的互译,包括中国五种少数民族语言。00
GOT-OCR-2.0-hf
阶跃星辰StepFun推出的GOT-OCR-2.0-hf是一款强大的多语言OCR开源模型,支持从普通文档到复杂场景的文字识别。它能精准处理表格、图表、数学公式、几何图形甚至乐谱等特殊内容,输出结果可通过第三方工具渲染成多种格式。模型支持1024×1024高分辨率输入,具备多页批量处理、动态分块识别和交互式区域选择等创新功能,用户可通过坐标或颜色指定识别区域。基于Apache 2.0协议开源,提供Hugging Face演示和完整代码,适用于学术研究到工业应用的广泛场景,为OCR领域带来突破性解决方案。00- HHowToCook程序员在家做饭方法指南。Programmer's guide about how to cook at home (Chinese only).Dockerfile06
- PpathwayPathway is an open framework for high-throughput and low-latency real-time data processing.Python00
热门内容推荐
最新内容推荐
项目优选









