CSS 架构、7-1 和样式组件

标签 css reactjs sass architecture styled-components

除了 Styled 组件和通常的 CSS-in-JS 的许多伟大功能之外,当代码库增长并且更多开发人员加入时,事情会变得非常困惑。

一些关于 CSS 和 SCSS 的东西,比如 7-1 模式 (https://www.learnhowtoprogram.com/user-interfaces/building-layouts-preprocessors/7-1-sass-architecture),如果设置正确并提供一些关于界面布局和组件如何工作的指南,事情会变得非常顺利和有条理,新人可以轻松上手到代码库并编写一个像样的 CSS,即使他们讨厌它或不知道它。

我喜欢 Styled 组件和 CSS-in-JS 的强大功能,所有这些都可能成为令人惊奇的东西……但我发现大规模维护起来非常繁重。

我感兴趣的是这两者的平衡,首先寻求这样的平衡有意义吗?对于样式组件的 7-1 模式,您有什么建议?

最佳答案

CSS-in-JS 将样式和行为更紧密地结合在一起,这就是重点。因此,让您的样式文件尽可能靠近您的组件是有意义的,这与 7-1 建议的相反。如果你想完全分离样式和组件,也许 CSS-in-JS 不是最好的方法。

对于共享变量,主题非常有用:https://www.styled-components.com/docs/advanced#theming .它还具有额外的好处,允许您拥有多个不同的主题并在它们之间轻松切换。

关于CSS 架构、7-1 和样式组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58220728/

相关文章:

jquery - 如果选中复选框,则将类添加到父元素

html - 未应用 CSS 规则

javascript - Ionic 3 在构建时更改变量/主题

html - 如何对齐两个 div 列之一

当鼠标悬停在一个图像上时,jquery 或 CSS 会使其余图像变暗

javascript - 为什么我在 put 请求中的更新会覆盖 Sequelize 中的整个记录​​?

javascript - React 动态导入不接受字符串变量

javascript - 如何通过代码拼写检查将所有未知单词添加到字典中,或者当语言不是英语时忽略它们?

ruby - WebStorm 的文件观察器用 Dart 编译 SCSS

javascript - 动画 Bootstrap 卡替换消失的卡