基于使用Webpack的https://github.com/davezuko/react-redux-starter-kit repo,我试图实现一个构建过程,用来自另一个文件夹的文件覆盖标准版本的* .scss文件。
/src
/styles
core.scss
_colors.scss
_common.scss
/custom-styles
/skin-1
/styles
_colors.scss
此示例中的 core.scss
会@import 'colors'
(如下所示)加载/src/styles/_colors.scss
文件。
core.scss:
:global {
@import 'colors';
}
我现在想要配置Webpack以首先检查文件的/custom-styles/skin-1
文件夹,然后仅在自定义位置找不到文件时才回退到标准路径解析。
因此覆盖激活:
@import 'colors'
将解析文件/src/custom-styles/skin-1/styles/_colors.scss
@import 'common'
将解析文件/src/styles/_common.scss
,但首先检查/src/custom-styles/skin-1/styles/_common.scss
是否可用有一个名为path-override-webpack-plugin
的webpack插件可以成功地为*.js
个文件(https://github.com/jamiehill/path-override-webpack-plugin)执行此操作。但不幸的是,它不会覆盖@import
文件中*.scss
使用的路径。
这种行为是如何实现的?