课程章节介绍
今天我们来看一看Lightning Web Components里一个特别贴心但你可能没注意到的设计——就是基本组件的可访问性。
你可能会想,可访问性是不是要自己从头写很多代码?其实不用,因为LWC的基本组件在底层已经帮你做了大量工作。它们严格遵循W3C的ARIA创作实践指南,组件状态变化的时候,那些ARIA属性会自动更新。
我举几个例子你就明白了。比如手风琴组件,当你展开或收起某一项,它的aria-expanded属性会自己切换,屏幕阅读器马上就能告诉用户这个区域是开了还是关了。再比如输入框,如果你输入的内容不符合验证规则,它会悄悄给你加上aria-describedby属性,自动关联到那条错误提示,这样视障用户就知道为什么提交失败。
再看导航,面包屑组件配好了aria-label和role属性,让辅助技术能清楚地说“这是导航路径,你现在在哪个层级”。这些都不需要你额外操心。
除了交互,视觉上的考虑也很到位。基本组件的颜色搭配完全符合WCAG 2.1的AA级对比度标准,保证文字和背景之间清晰可辨。按钮还贴心地提供了不同目的的样式变体——成功用绿色,报错用红色,品牌色、中性色都有,既好看又不影响辨识度。
表单这块做得特别扎实。每个输入控件都通过label元素正确关联,背后使用WAI-ARIA属性、title属性,复杂表单还会用fieldset和legend分组,加上表单说明文字。甚至输入验证的撤销功能都考虑到了,出错后能告诉你怎么改回去。
图像和图标组件呢,提供了替代文本属性,这些属性会直接映射到底层img元素的alt和title上。如果需要给屏幕阅读器传递信息,但又不想在视觉上显示,还可以用SLDS里的辅助文本样式把它隐藏起来。
所以总结一下,使用这些基本组件,你就有了一个坚实的可访问性起点。它帮你自动处理了复杂的ARIA管理,让你能专注于应用本身的业务逻辑,而不是陷入那些底层细节里。是不是很省心?
好了,今天我们就讲到这,下次再见。
关键词
LWC
Lightning Web Components
Salesforce