首页 > 解决方案 > 如何实现服务器端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;
}

标签: javascriptcssreactjsless

解决方案


推荐阅读