Import 可以在Sass文件的导入语句中使用变量吗?
用不了多久,我就能做这样的事了Import 可以在Sass文件的导入语句中使用变量吗?,import,sass,Import,Sass,用不了多久,我就能做这样的事了 @basePath:"../../some_crazy_project_path_to_repeat/less/"; @import "@{basePath}less.less"; 所以我试着在Sass中做同样的事情 $basePath:"../../some_crazy_project_path_to_repeat/less/"; @import "${basePath}less.scss"; // Syntax error: File to import n
@basePath:"../../some_crazy_project_path_to_repeat/less/";
@import "@{basePath}less.less";
所以我试着在Sass中做同样的事情
$basePath:"../../some_crazy_project_path_to_repeat/less/";
@import "${basePath}less.scss";
// Syntax error: File to import not found or unreadable: ${basePath}less.scss.
及
在Sass中有这样做的方法吗?在Sass中导入时不能使用条件填充
考虑从项目中创建扩展。不能在导入路径中使用前面提到的变量。您可以使用
-I
或--load path
选项指定要从中搜索的目录
sass --watch sass/:css/ --load-path ../../path/to/library/
假设您有如下目录结构:
themes
hotdog
_variables.scss
classic
_variables.scss
styles.scss
# hotdog
sass styles.scss hotdog.css --load-path ./themes/hotdog/
# classic
sass styles.scss classic.css --load-path ./themes/classic/
styles.scs应具有相对于提供的加载路径的导入路径:
您的命令如下所示:
themes
hotdog
_variables.scss
classic
_variables.scss
styles.scss
# hotdog
sass styles.scss hotdog.css --load-path ./themes/hotdog/
# classic
sass styles.scss classic.css --load-path ./themes/classic/
有关更多信息,请参阅。使用
{}
@steveax插值是一个非常酷的功能,但我不知道在这种情况下它会有什么帮助?@steveax谢谢。我正在从第三方库导入一堆组件定义。我可以重复完整的路径n次,但我想如果有一种方法可以在更少的时间内完成,为什么不使用Sass?@阿曼H,我把你的笔记加到问题上了。我想Andrey知道一些我不知道的事情:)Andrey的回答是正确的,不能对Sass导入使用字符串插值。@BernaMariano,@import“#{$basePath}less.scss”代码>导致Sass错误。Andrey是正确的,从“导入可能包含#{}插值,但必须有一定的限制。不可能基于变量动态导入Sass文件;插值仅适用于CSS导入。因此,它仅适用于url()导入。”