Я пытаюсь заставить функцию карт работать в следующем сценарии:
@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, @{состояние} и т. д., но не нашли решение, которое работает.
Буду признателен за помощь специалиста, чтобы определить, можно ли это сделать, или за альтернативный шаблон.