字体命名空间的 stylelint 中断了吗?

stylelint breaks for font namespace?

我有一个名为 foo.scss 的文件,其内容为:

.foo {
    font: {
        family: arial;
        weight: 600;
    }
}

在命令行上使用 stylelint 8.4.0 进行 linting 会产生以下输出:

foo.scss 2:5 ✖ Cannot parse selector parseError

但是,我希望这个 sass 语法可以工作,因为它在 https://sass-lang.com/documentation/file.SASS_REFERENCE.html#nested_properties

的 sass 文档中有描述

您在 font 之后缺少 :,因此 sass 将 font 视为选择器,而 familyweight 作为特性。您需要在 font 之后添加 : 以获得所需的结果:

.foo {
    font: {
        family: arial;
        weight: 600;
    }
}

似乎 stylelint 无法处理某些特殊的 scss 语法。我认为最好的选择是检查 css 输出(通过 postcss)而不是 scss 本身。

请参阅 Parsing non-standard syntax 以正确地检查 scsssass 文件。

升级到 stylelint 9.4(从 8.4)解决了我的问题。