styled-components 让样式成为组件的一等公民:const Button = styled.button 开头,样式只属于这个组件,删除组件样式即清除,不存在全局污染,也不存在删了组件却留下死样式的维护包袱。它天然支持按 props 动态变样式、按主题切换,调试面板里还能定位到源码位置,在 React 生态里长期是最主流的样式方案之一。
需要留意它的运行时:早期版本在运行时生成类名并注入 style 标签,服务端渲染要配合 SSR 收集器避免样式闪烁;性能敏感的列表场景可以评估编译时方案(如 linaria、vanilla-extract)。调试时类名是一串哈希,配 babel 插件可在开发环境显示原始组件名。中后台与动态主题应用用它很舒服。
import styled from 'styled-components'; const Title = styled.h1` font-size: 24px; color: ${props => props.theme.primary}; `; /* 主题通过 Provider 注入,子树自动拿到 theme.primary */