【问题标题】:PhpStorm SCSS trigger compilation on partial changePhpStorm SCSS 在部分更改时触发编译
【发布时间】:2018-06-05 00:53:06
【问题描述】:

首先我必须指出,这一切都在不久前运作良好。一段时间后我回到了项目。同时我更新了 PhpStorm 并迁移到 Win10。其他一切都保持不变。

我在触发 scss 部分编译时遇到问题。当我在根文件“global.scss”中进行更改时,一切正常 - 部分也被编译。但是,当我对部分进行更改时,PhpStorm 不会触发根文件的编译。

PhpStorm 版本:2017.2.3

文件结构:

观察者配置:

范围配置:

global.scss

我已经尝试了很多 - 没有任何效果。文件观察者似乎忽略了以下划线为前缀的部分。

编辑: 我发现了一些东西 - 范围模式中的通配符似乎忽略了带下划线的文件。但是,部分被标记为包含在文件树中。我暂时更改了项目文件的范围,它运行良好 - 不幸的是我不能离开这个设置。

EDIT2: 我不知道它是错误还是功能,但 PhpStorm 以奇怪的方式处理嵌套的 Source 根。检查这个文件结构:

如果没有 scss 目录的源根目录,即使使用范围模式也会触发编译。但是编译后的 css 放在错误的目录中 - 所以它不可用。

【问题讨论】:

  • 请检查文件将被监视的范围。您选择了一个名为 init 的范围。检查目录scss是否被递归包含。
  • @muecas 是的
  • 有时在 Win10 中(在网络挂载上)我需要将注意力集中在 PHPStorm 窗口之外,以便执行观察者。如果您更改部分并选择另一个程序(或单击桌面),观察者任务是否会执行?
  • 我将触发器设置为在保存时手动执行 (Ctrl + S)
  • 你可以试试参数化宏$FileDirPathFromParent(src)$,它返回foo/bar for some/path/src/foo/bar/baz.scss

标签: sass phpstorm


【解决方案1】:

根据您的信息和调查:您正在使用嵌套的“源”文件夹(在 scss 上)和 $SourcepathEntry$ 和相关宏...在您的 IDE 版本中似乎无法正常工作。

摆脱它 - 您的设置根本不需要它。您的文件夹结构非常标准,因此可以使用更“标准”的方式解决。

  • 暂时禁用此文件观察器(您可以稍后将其删除)并新建一个。
  • 尝试$FileDirPathFromParent()$ 参数化宏(它接受参数)。 例如对于$FileDirPathFromParent(src)$ 它返回foo/bar 对于some/path/src/foo/bar/baz.scss 文件路径。在创建所需路径时,此宏应该可以完成这项工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-01
    • 2022-08-18
    • 2022-01-08
    • 2013-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-30
    相关资源
    最近更新 更多