lwc:spread — Reflect HTML Attributes

DEX475 - Composition

📄 第 82 页 🎬 视频课程

课程章节介绍

今天我们来聊聊 lwc:spread 的一个实用特性——HTML 属性反射。 简单说,就是当你用 lwc:spread 把一堆属性传给子组件时,那些在原生 HTML 里能自动反射的属性,全都会正常生效。比如,你传一个 className 属性,在子组件的真实 DOM 元素上,它就会自动变成 class 这个 HTML 属性。同理,你传 id,它就直接变成元素上的 id 属性。这其实和普通 Web 开发里,DOM 属性跟 HTML 属性保持同步的标准行为一模一样。 那这个功能有什么用呢?你可以在父组件里动态地控制子组件的 CSS 类、ID,还有其它标准 HTML 属性,不需要在子组件里额外写逻辑。比如你根据某种状态改变 className,子组件的样式就跟着变了,非常方便。 记住一个小规则:这个反射完全跟着 HTML 规范走。也就是 className 映射到的是 class,而不是 className 或者 Class(大写 C 的不行)。所以命名时照着 JS 里的 DOM 属性名写,它就会自动对应到正确的 HTML 属性上。 用这个特性,就能很优雅地处理动态样式和原生属性了。

关键词

LWC Lightning Web Components Salesforce