javascript - 如何实现服务器端less主题?
问题描述
我需要像这样从服务器端更改主题:
useEffect(()=>{
const themeFromServer = {
primaryColor:'d02a02'
}
//refresh .less file but not refresh page(if possible)
},[])
//then, refresh .less file
.less 文件
@primaryColor: #000000;
.header {
color: @primaryColor;
}
但我不知道如何刷新 less 文件并更改 less 文件中的变量。或者有没有办法在 .less 文件中使用 javascript 变量,如下所示:
@import client from './somewhere'
function getPrimaryColor = (client) =>{
switch (client) {
case 'A':
return 'red'
break;
case 'B':
return 'blue'
break;
}
default:
return 'black'
}
@primaryColor:getPrimaryColor();
.header {
color: @primaryColor;
}
解决方案
推荐阅读
- vb.net - VSTO 在 Outlook 中创建类似“通知栏”的消息
- java - @ContextConfiguration 不只引入指定的配置类
- flutter - 当我创建一个flutter-plugin项目时,我找不到flutter
- android - 当我单击电子邮件中的链接时如何在应用程序中路由
- angular - 为什么 unsubscribe() 需要这么多时间?
- r - 使用 R 中的其他阈值表替换数据帧中的数据
- angular - 使用 observable 的结果作为属性
- django - Django 在多个项目之间共享相同用户模型和数据库的最佳方式
- python - 将文本匹配到多个组的正则表达式
- javascript - 如何使 html 元素消失?