Мне нужно сделать переменные sass глобальными для всех остальных импортированных файлов sass в моем проекте, а не импортировать их отдельно для каждого файла sass. Для простоты я убрал все назад, поэтому у меня есть приложение .NET 8 Blazor в VS2022 и корневой файл sass, например:
root.scss
@import "variables.scss";
@import "foobar.scss";
переменные.scss
$primary: #767f81;
foobar.scss
//@import "variables.scss";
.something {
color: $primary;
}
Если я раскомментирую переменные @import внутри foobar.scss, это работает/создается, в противном случае я вижу:
Кто-нибудь знает, как это решить, и действительно ли это возможно, или это просто IDE с Visual Studio?
Спасибо
Мне удалось добиться того, что мне было нужно, и теперь некоторые переменные можно установить в корневом/глобальном каталоге, используя @forward и @use следующим образом:
root.scss
// use the default value
// @forward "variables";
// to override the value
@forward "variables" with ( $primary: #b6ff00 !default);
@import "foobar.scss";
переменные.scss
$primary: #767f81 !default;
foobar.scss
@use "variables";
.something {
color: variables.$primary;
}
примечание: VS2022 по-прежнему отображает предупреждение, но приложение строится, и DartSassBuilder генерирует ожидаемый CSS.