我目前正在尝试使用Webpack捆绑所有文件,并且我不知道如何处理多个文件夹和.scss
文件时如何继续。使用webpack导入目录中的所有sass文件
我用咕噜完成这些任务,这是我的文件夹结构的例子:
functions
- _mixin.scss
- _function.scss
- [...]
variables
- _colors.scss
- _typo.scss
- [...]
ui
- _button.scss
- _grid.scss
- [...]
view
- _home.scss
- _about.scss
- [...]
随着Grunt
我会运行一个任务生成一个名为main.scss
包含所有@import
文件,例如:
@import 'function/_mixin.scss';
@import 'function/_function.scss';
@import 'variables/_colors.scss';
@import 'variables/_typo.scss';
[...]
目前我指定我.js
文件中导入(与extract-text-webpack-plugin
一起使用)来定义main.scss
文件,但每一个新的import
或旧的,需要手动添加/删除。有没有办法通过WebPack
自动执行此任务?
,文件名匹配由用户需求(即通过装载机)需要产生的CSS。如果你想将scss编译为一个文件,而不需要将它们作为组件导入到webpack中,那么删除'@import scss'语句并通过npm脚本或其他方式(grunt/node-sass etc)分别编译它们。 –
@DenisTsoi我是只需导入编译的CSS。我想说的是,例如,如果我在文件夹“ui”中创建一个新文件,我需要手动添加@import'ui/newfile';在main.scss文件中。我曾经使用'grunt sass-compile-imports'自动执行它。 – celsomtrindade
嗯 - 我想这是一个非常见的做法(因为它假设你的工作流程确保样式绑定到组件js/html依赖关系) - 因此像这样自动添加所有的partial可能不被普遍支持。 没有什么能够阻止你说出来,使用grunt自动编译scss,并要求'main.scss'到条目文件中。 –