css - 将类属性应用于 Angular 组件元素是不好的做法吗?
问题描述
我不经常看到人们将类名(类属性)放在实际的 Angular 组件上的示例,如下所示:
<app-my-list class="list"></app-my-list>
当类在该范围内很重要时(因此该类不需要在组件的 Sass 文件中),或者如果它们与周围的元素相关,如在 Flexbox flex-container/flex-child 关系中,可以这样做:
<app-parent class="flex-container">
<app-child class="flex-item"></app-child>
</app-container>
这是不好的做法吗?
解决方案
TLDR - 不一定。
按照封装的原则,如果类影响了组件的内部样式,最好给组件传递一个变量,让组件自己决定样式。但是,如果像在您的示例中那样,它是一个更大的布局类,那么使用您正在做的类实际上是一种更好的做法,因为组件不需要了解布局。
另外,为了不重复你自己,我假设这个类对这个组件的某些实例做了一些特殊的事情,而不是全部。如果您向每个组件实例添加相同的类,您将违反“不要重复自己”的规则,这将是一种不好的做法。
推荐阅读
- c# - C# 乘法给出错误答案
- javascript - 可以为 querySelectorAll 使用数组吗?
- mysql - 如何在 SQL 中创建一个 .txt 文件并将数据插入其中?
- javascript - 单击内部元素时停止执行容器 div 中的 onClick 函数
- nginx - haproxy 后面的 nginx 邮件代理 - 获取客户端的真实 IP 地址
- python - if-else 的两个分支都不执行
- python - 我的代码跳过了 if 语句。(蟒蛇2.7)
- git - 将提交从一台 PC 移动到另一台以推送到 Git 存储库
- reactjs - Chrome扩展如何删除devtools网络添加的监听器
- vue.js - 访问服务内部的 Vue 商店