У меня возникают проблемы с функцией random()
в sass при компиляции на моем сервере Ubuntu.
В настоящее время он работает нормально локально, однако, если я запускаю задачи gulp на своем ящике ubuntu gulp-sass
, вывод генерируется только один раз.
Это дерьмо:
@function multipleBoxShadow($stars, $opacity) {
$value: '#{random(2000)}px #{random(2000)}px rgba(255, 255, 255, #{$opacity})';
@for $i from 2 through $stars {
$value: '#{$value} , #{random(2000)}px #{random(2000)}px rgba(255, 255, 255, #{$opacity})'
}
@return unquote($value)
}
@mixin starBase($speed, $size, $amount, $opacity) {
box-shadow: multipleBoxShadow($amount, $opacity);
animation: animStar $speed linear infinite;
}
#stars {
@include starBase(50s, 1px, 700, 1);
}
И это вывод на поле ubuntu при использовании gulp-sass:
#stars {
animation: animStar 100s linear infinite;
box-shadow: 321px 321px rgba(255, 255, 255, 1) , 321px 321px rgba(255, 255, 255, 1) , 321px 321px rgba(255, 255, 255, 1) etc etc....
}
Как вы можете видеть, он генерирует случайное число только один раз и использует одно и то же значение для всех повторений, в отличие от моей локальной машины, где вывод каждый раз случайный.
Если затем я попытаюсь использовать компилятор sass вне grunt sass sass/default.css style/default.css
, тогда random() полностью завершится ошибкой:
#stars {
animation: animStar 100s linear infinite;
box-shadow: random(2000)px random(2000)px rgba(255, 255, 255, 1) , random(2000)px random(2000)px rgba(255, 255, 255, 1) etc etc....
}
Есть ли что-то, что мне нужно установить на мою коробку Ubuntu для правильной компиляции random()? Я всегда предполагал, что это родное с sass.
Вот SassMeister для демонстрации правильной компиляции: http://sassmeister.com/gist/165fe1dcc831220c8717