[英]Make Tailwind Classes non-Global (automatically!)
我有一个由两部分组成的应用程序:
A
) 具有自己的 CSS 类的遗留应用程序 (AngularJs)。B
) div
包含一个全新的应用程序 (React)。 B
是用 webpack、postcss 和 Tailwind 构建的。 我能否确保B
的 Tailwind 类不受A
的样式表的影响,反之亦然,而不会对代码库进行任何重大更改?
我目前发现了两种可能需要大改动的解决方案:
className="x"... className="y"
变为:
import s1 from 's1'; import s2 from 's2'; ... className="s1.x"... className="s2.y"
我发现了另外两个相关的 postcss 插件,但它们都不够用:
postcss-rename
很棒,但它不能修复*.js
文件中的名称。purgecss
可以根据它们在*.js
文件中的存在来查找类,然后将它们从 output class 列表中删除,但它们不允许重命名。 我特别发现最关键的缺失功能似乎是purgecss
的*.js
文件解析器。 似乎还没有其他解决方案能够做到这一点。
还是我错了? 是否有任何解决方案可以将自定义转换(例如重命名)应用于所有 postcss 类,这些类也适用于 HTML/JSX 元素的 output class 名称? 或者有没有其他方法可以让 webpack 自动使我的 CSS 类对我来说不冲突?
您可以使用尾风的前缀选项
前缀选项允许您为 Tailwind 生成的所有实用程序类添加自定义前缀。 在可能存在命名冲突的现有 CSS 之上分层 Tailwind 时,这非常有用。
例如,您可以通过设置前缀选项来添加 tw- 前缀,如下所示:
// tailwind.config.js
module.exports = {
prefix: 'tw-',
}
你可能想试试这个加载器和顺风前缀配置tailwind-classname-prefix-loader
您可以尝试使用连字符来防止长类名
module.export = {
prefix: "-"
}
对于我的一个项目,它看起来更美观
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.