有没有办法在不指定默认 class 名称或使用 !important 的情况下将样式修改为外部组件库?

Is there a way to modify styles to an external component library without specifying the default class names or using !important?

我的客户正在使用 AntDesign,我们有一个包含搜索输入的布局,现在在 AntDesign 中,Input.Search 组件打包时包含一个按钮。

问题是布局侧边栏和搜索输入共享一个 class,因此当它们都在布局内时,它会将 class 应用于我的搜索输入,这使得按钮偏移内的图标。

我可以使用 class 名称 .ant-btn .anticon 直接操作它, 然而,这是一种不好的做法,因为如果更新 class 名称,这将无提示地失败,并且可能与一致的站点范围样式冲突。

有没有办法在不直接覆盖默认值的情况下更新此按钮及其样式 class?

我找到了一个相当简单的带有样式组件的解决方案,它允许我创建一个如下所示的组件:

使用 &&& 将允许我在不直接使用 class 名称或使用 !important

的情况下覆盖样式

可以在此处找到更多信息:LESS - Multiple &