Sass:如何获得文件系统&x27;当前.sass文件的绝对路径?

Sass:如何获得文件系统&x27;当前.sass文件的绝对路径?,sass,Sass,类似于@current\u file\u path()的东西,它会在文件系统中显示文件的实际路径 我的实际问题如下 我有一个子模块,它有自己的.scss文件和相关图像 子模块的样式包含在公共模块的文件中,该文件不在同一目录中(实际上在父目录中),如下所示: @include "submodule/_style"; $submodule-dir: "submodule"; background-image: url("$submodule-dir/image.jpg"); 在子模块的文件中,

类似于
@current\u file\u path()
的东西,它会在文件系统中显示文件的实际路径


我的实际问题如下

我有一个子模块,它有自己的
.scss
文件和相关图像

子模块的样式包含在公共模块的文件中,该文件不在同一目录中(实际上在父目录中),如下所示:

@include "submodule/_style";
$submodule-dir: "submodule";
background-image: url("$submodule-dir/image.jpg");
在子模块的文件中,我想这样写:

    background-image: url(image.jpg);
但我不能。因为所有路径都是相对于公共模块文件的,因为只有它被编译成最终的CSS,而不是当前的子模块文件。所以我必须这样做:

@include "submodule/_style";
$submodule-dir: "submodule";
background-image: url("$submodule-dir/image.jpg");

因此,我想为当前文件创建一个自动计算
$submodule dir
的函数。可能吗?

sass中没有获取当前文件路径的函数

它遵循正常的css语法。 因此,您必须在子模型中定义路径。
但我们可以创建一个函数,使其更简单:

像这样:

$currentModule: "../submodule/image/";

@function setUrl($file) {
  @return url($currentModule + $file);
}

.main {
  background-image: setUrl("file.jpg");
}

sass中没有获取当前文件路径的函数

它遵循正常的css语法。 因此,您必须在子模型中定义路径。
但我们可以创建一个函数,使其更简单:

像这样:

$currentModule: "../submodule/image/";

@function setUrl($file) {
  @return url($currentModule + $file);
}

.main {
  background-image: setUrl("file.jpg");
}