Получить или установить переменную LESS из JavaScript? - PullRequest
4 голосов
/ 28 ноября 2011

Во время тестирования моего веб-приложения я хотел бы иметь возможность установить значение одной из моих LESS @variables с помощью простого раскрывающегося списка. (Для изменения цветовой схемы в целом).

Я полагаю, что после установки значения LESS должен перезагрузить / перекомпилировать файлы .less с новым значением?

Есть ли простой способ сделать это? (Я не запускаю node.js)

Базовым примером будет что-то вроде:

styles.less
@base-color = `window.baseColor()`

1 Ответ

6 голосов
/ 30 ноября 2011

Я думаю, вы делаете это слишком сложным образом;)

Вот что я предлагаю:

  1. Установите класс на своем телеtag:

    <body class='theme_default'></body>
    
  2. В вашем файле .less укажите ваши темы:

    body.theme_default { base_color: #fff; }
    body.theme_gray    { base_color: #ccc; }
    etc..
    
  3. Используя jQuery (или просто JS), изменитекласс тега body при изменении выпадающего состояния.

Вот как я это сделаю (и заменим выпадающий список каким-нибудь красивым виджетом;) Cheers

...