【问题标题】:Postcss Syntax Errors silentlyPostcss 语法错误静默
【发布时间】:2016-10-05 16:28:09
【问题描述】:

所以我目前正在建立一个仅使用 postcss 并完全放弃 scss 的项目。我正在努力解决的一件事是,如果语法失败,则缺少任何错误报告。

例如,我添加了 precss 插件,当我拼写错误的变量时:

$somevar: #000;
.body{
  color:$oopsvar;
}

显然在 SCSS 中它会抛出一个错误并告诉我 $oopsvar 不存在。但它只是解析它并返回:

.body{
  color:$oopsvar;
}

这显然是无效的。我添加了 postcss-reporter、postcss-devtools,甚至尝试查看 stylelint 中是否有任何可能显示错误的规则,但什么也没有。

现在我不确定这是否只是插件的问题,比如 precss 或我在 postcss 中缺少的整体问题。其他人如何调试 postcss,或者人们只是检查浏览器?

【问题讨论】:

    标签: css sass postcss


    【解决方案1】:

    所以我做了一些调查并在postcss gitter聊天

    在 postcss 中有一种显示 warningserrors 的内置方式,但是由于插件方法,它由各个插件创建者来实现。我遇到的precss 没有得到维护的问题是他们没有显示任何警告的问题。我们更倾向于维护良好的cssnext,尽管语法略有不同,因为它使用建议的 css 变量而不是 scss 语法。

    如果已实施,您还需要postcss-reporter 来获取警告和错误。

    【讨论】:

      【解决方案2】:

      如果你想找到所有的错误,你应该使用 linter。 Stylelint 将是不错的选择(基于 PostCSS)。

      PostCSS 用于许多 CSS 工具。其中一些工具使用自定义语法。这就是 PostCSS 可以解析自定义语法的原因($somevar: #000; 被解析为 $somevar 属性)。

      【讨论】:

      • 谢谢,stylelint 很不错,但并没有完全解决我的问题。是的,但它现在确实有错误消息,但并非所有插件都已更新 - precss 就是其中之一
      猜你喜欢
      • 2017-05-19
      • 2021-05-20
      • 2018-07-14
      • 2021-03-03
      • 2017-02-26
      • 1970-01-01
      • 2023-04-01
      • 2016-05-26
      • 1970-01-01
      相关资源
      最近更新 更多