Променливи во параметри во SASS
Има ситуации кога миксинот или функцијата треба да прифатат непознат број на параметри. За што во јазикот SASS постои можност за пренос на "променливи параметри" или параметри, кои се наведени последни во функцијата или миксинот и ги пакуваат сите останати пренесени параметри во листа.
После ваквите параметри треба да се стави многоточие. Да го разгледаме следниот пример:
@mixin box-content-padding($padding...) {
-moz-box-content-padding: $padding;
-webkit-box-content-padding: $padding;
}
div {
@include box-content-padding(0px 4px 5px 2px);
}
Резултат на компајлација:
div {
-moz-box-content-padding: 0px 4px 5px 2px;
-webkit-box-content-padding: 0px 4px 5px 2px;
}
Во променливите на функцијата или миксинот исто така
можат да се пренесат именувани параметри.
За да може да се пристапи до нив
се користи функцијата keywords($args),
која ги враќа како соодветствие
на имиња (без знакот $) и вредности.
@mixin common-colors($text-color, $background, $shadow) {
color: $text-color;
background-color: $background;
box-shadow: $shadow;
}
$values: white, green, grey;
.primary {
@include common-colors($values...);
}
$value-map: (text-color: black, background: grey, shadow: green);
.secondary {
@include common-colors($value-map...);
}
После компајлацијата ќе видиме:
.primary {
color: white;
background-color: green;
box-shadow: grey;
}
.secondary {
color: black;
background-color: grey;
box-shadow: green;
}