Меньше проблемы CSS Mapping - PullRequest
0 голосов
/ 28 января 2019

Я пытаюсь заставить функцию карт работать в следующем сценарии:

@state-colors: {
    @light: {
        hover: blue;
        focus: red;
        active: green;
    }
}

.mdc-states-on(@state; @tone) {
     &:@{state}::after {
        background-color: @state-colors[@@tone][@@state];
    }
}

.mdc-button-state-on(@tone) {
    .mdc-states-on(hover; @tone);
}

Как видите, я вызываю mdc-button-state-on, который затем создает необходимое мне свойство с помощью mdc-states-on.

Выше не компилируется в настоящее время.

Проблема со значением @@state.Как переменная она не работает, но если я подставлю ее, скажем, константу, например, 'hover', она скомпилируется.

background-color: @state-colors[@@tone][hover];  // compiles

Я попытался изменить @@ state на @state, @{состояние} и т. д., но не нашли решение, которое работает.

Буду признателен за помощь специалиста, чтобы определить, можно ли это сделать, или за альтернативный шаблон.

...