代码之家  ›  专栏  ›  技术社区  ›  vogomatix

在JetBrains IDE's(IDEA、PhpStorm、WebStorm等)中进行Sass linting

  •  0
  • vogomatix  · 技术社区  · 6 年前

    当我在我的项目中查看Sass/SCSS文件时,由于没有意识到所讨论的Sass语句依赖于在单独的部分文件中声明的mix-in/variables,它有大量的“橙色”错误。

    我该怎么做才能让IDE识别出这样的变量和混合在另一个部分文件中声明?

    例如

    _variables.scss
    _mixins.scss
    _partial1.scss      <-- lots of warnings in here 
    _partial2.scss      <-- lots of warnings in here too
    main.scss           <-- @imports _variables, _mixins and _partial files.
    

    错误的工具提示示例:

    enter image description here

    2 回复  |  直到 6 年前
        1
  •  0
  •   lena    6 年前

    • 若元素可以从当前文件或显式导入的文件中解析为声明,则只解析它

    • 如果在第一步之后没有解析元素(在当前文件/显式导入到当前文件中的文件中找不到声明),那么IDE将尝试只按名称解析它,而不管它是在哪个文件中声明的(“global”元素)。已解析元素被弱警告检查标记为“仅按名称解析”,因为IDE无法知道此元素是“全局”还是只是未被错误导入。如果不希望看到这些警告,可以禁用此检查。

        2
  •  0
  •   Flying    6 年前

    有两种方法:

    1. 从PHPStorm的角度来看是正确的,您需要将每个特定文件的所有依赖项直接导入其中(就像我们在JavaScript模块中所做的那样)。然而,这种方式将导致CSS代码膨胀,因为在某种情况下,如果您的导入将包含CSS代码,那么它将被复制,并且即使通过迷你程序也无法解决它