PhpStorm SCSS 在部分更改时触发编译
PhpStorm SCSS trigger compilation on partial change
首先,我必须指出,这一切在前一段时间都运行良好。一段时间后我回到了项目。同时我更新了 PhpStorm 并迁移到 Win10。其他一切保持不变。
我在触发 scss 部分编译时遇到问题。当我在根文件 "global.scss" 中进行更改时,一切正常 - 部分文件也被编译。但是,当我在部分文件中进行更改时,PhpStorm 不会触发根文件的编译。
PhpStorm 版本:2017.2.3
文件结构:
观察者配置:
作用域配置:
global.scss
我已经尝试了很多 - 没有任何效果。文件观察器似乎忽略了带有下划线前缀的部分。
编辑:
我发现了一些东西 - 范围模式中的通配符似乎忽略了带下划线的文件。然而,部分被标记为包含在文件树中。我暂时将范围更改为项目文件并且效果很好 - 不幸的是我不能离开这个设置。
编辑2:
我不知道它是错误还是功能,但 PhpStorm 以奇怪的方式处理嵌套的源根。检查此文件结构:
没有 scss 目录的源代码根目录,即使使用作用域模式也会触发编译。然而编译后的 css 被放置在错误的目录中 - 所以它不可用。
根据您的信息和调查:您正在使用嵌套的 "Source" 文件夹(在 scss
上)和 $SourcepathEntry$
及相关的宏...这似乎无法正常工作预计在您的 IDE 版本中。
摆脱它——您的设置根本不需要它。您的文件夹结构非常标准,因此可以使用更多 "standard" 方法解决。
- 暂时禁用此文件观察器(您可以稍后将其删除)并创建一个新的。
- 尝试
$FileDirPathFromParent()$
参数化宏(它接受参数)。 例如为$FileDirPathFromParent(src)$
它returnsfoo/bar
为some/path/src/foo/bar/baz.scss
文件路径。这个宏应该在制作所需路径时完成工作。
首先,我必须指出,这一切在前一段时间都运行良好。一段时间后我回到了项目。同时我更新了 PhpStorm 并迁移到 Win10。其他一切保持不变。
我在触发 scss 部分编译时遇到问题。当我在根文件 "global.scss" 中进行更改时,一切正常 - 部分文件也被编译。但是,当我在部分文件中进行更改时,PhpStorm 不会触发根文件的编译。
PhpStorm 版本:2017.2.3
文件结构:
观察者配置:
作用域配置:
global.scss
我已经尝试了很多 - 没有任何效果。文件观察器似乎忽略了带有下划线前缀的部分。
编辑: 我发现了一些东西 - 范围模式中的通配符似乎忽略了带下划线的文件。然而,部分被标记为包含在文件树中。我暂时将范围更改为项目文件并且效果很好 - 不幸的是我不能离开这个设置。
编辑2: 我不知道它是错误还是功能,但 PhpStorm 以奇怪的方式处理嵌套的源根。检查此文件结构:
没有 scss 目录的源代码根目录,即使使用作用域模式也会触发编译。然而编译后的 css 被放置在错误的目录中 - 所以它不可用。
根据您的信息和调查:您正在使用嵌套的 "Source" 文件夹(在 scss
上)和 $SourcepathEntry$
及相关的宏...这似乎无法正常工作预计在您的 IDE 版本中。
摆脱它——您的设置根本不需要它。您的文件夹结构非常标准,因此可以使用更多 "standard" 方法解决。
- 暂时禁用此文件观察器(您可以稍后将其删除)并创建一个新的。
- 尝试
$FileDirPathFromParent()$
参数化宏(它接受参数)。 例如为$FileDirPathFromParent(src)$
它returnsfoo/bar
为some/path/src/foo/bar/baz.scss
文件路径。这个宏应该在制作所需路径时完成工作。