使用 dart sass CLI 导入波浪号

Tilde imports with the dart sass CLI

我正在升级一个旧系统,其中有很多:

@import "~bootstrap/scss/mixins";

使用 dart-sass CLI 编译时失败。

我曾经使用 node-sass 和 node-sass-tilde-importernode-sass-package-importer 等包来帮助处理该语法。它们似乎不适用于 dart-sass.

鉴于我现在正在使用 dart sass CLI,我该如何处理?

Dart Sass CLI?我认为在 dart sass 中没有办法像这样导入。你必须手动完成。

但是有一个 Sass 迁移器可以修复遗留 sass 代码,试试看:

https://sass-lang.com/documentation/cli/migrator

如果您将它与模块捆绑器一起使用,这可能会有所帮助:

解决方法很简单,可惜不支持波浪线语法

scss 文件应该是这样的:

@import "foo/bar";            // <--- must remove tilde

cli 语法是:

sass --load-path=path/to/node_modules SomeFile.scss SomeFile.css

为了完整起见,明显的其他解决方案是:

@import "../../../node_modules/foo/bar";