Проверьте, существует ли карта SASS
Как я могу проверить, существует ли карта SASS, и определить только одну, если это не так?
Я пытался:
@if ($myMap) {
// do someting
}
а также
@if variable-exists($myMap) {
// do something
}
Но я получаю сообщение об ошибке "Неопределенная переменная: "$myMap"? Я уверен, что это довольно просто, но я не могу найти ответ в Интернете?
Спасибо
2 ответа
Это немного сбивает с толку, но при проверке существования переменной пропустите $
, Вы также должны установить его как глобальную переменную, чтобы он не ограничивался только @if
блок. Это работает:
@if variable-exists(myMap) == false {
$myMap: (
1: "foo",
2: "bar"
) !global;
}
// ... now you can use your variable
Вы можете установить, что карта будет существовать как ноль по умолчанию, что означает, что если она нигде не установлена явно, то переменная все еще существует, но с нулевым значением. Затем вы можете проверить, является ли значение переменной нулевым, используя оператор if.
$myMap: null !default;
@if $myMap == null {
}