Javascript 是否可以将Ant设计主题更改为动态
在react 16.7 CRA中,是否有任何方法可以在运行时更改Ant设计主题。 Config-overides.js文件如下所示Javascript 是否可以将Ant设计主题更改为动态,javascript,reactjs,antd,Javascript,Reactjs,Antd,在react 16.7 CRA中,是否有任何方法可以在运行时更改Ant设计主题。 Config-overides.js文件如下所示 const{override,fixBabelImports}=require('customize-cra'); module.exports=覆盖( fixBabelImports(“导入”{ 图书馆名称:“antd”, 库目录:“es”, 样式:“css”, }), addLessLoader({ javascriptEnabled:true, 修改变量:{
const{override,fixBabelImports}=require('customize-cra');
module.exports=覆盖(
fixBabelImports(“导入”{
图书馆名称:“antd”,
库目录:“es”,
样式:“css”,
}),
addLessLoader({
javascriptEnabled:true,
修改变量:{'@primary color':'#1DA57A'},
})
);代码>是的,现在可以使用。您可以在的源代码中看到(通过调用window.less.modifyVars(vars)
)
正如存储库中所述,webpack插件注入了一个javascript文件,允许您使您的应用程序可以像动态修改较少的变量一样运行。另外请注意,如repo中所述,如果您的网页包没有生成HTML,则需要手动修改它,以包含库和适当的脚本文件。实现这一点的另一种方法是仅为暗模式创建另一组css,并对其进行范围限定
较少的编译器会以某种方式处理此问题,但在代码中输入较少的编译文件的顺序上,您需要格外小心。您可能需要为此尝试并出错。基本思想是:
import './styles/dark.less';
import './styles/index.less';
在黑暗中,你会有更多或更少
[data-theme^="dark"] {
@import "./your.less";
}
现在,您可以通过在根html标记中分配值来动态选择模式。
关于这一点,此链接可能会有所帮助:也许可以帮助您