如何避免使用webpack这个硬编码的index.js?

任务:

  • CSS :编译.scss,添加前缀,缩小和concat到main.css中
  • JSminify和concat到main.js中

我们正在使用webpack和BEM。

项目结构:

static/ ├── build │  ├── main.css │  └── main.js └── src ├── blocks │  ├── a │  │  ├── a.js │  │  └── a.scss │  ├── b │  │  └── b.scss │  ├── c │  │  └── b.scss │  └── d │  ├── d.js │  └── d.scss └── index.js 

index.js是webpack的入口点,这个内容:

 // javascript require("./a/a.js"); require("./d/d.js"); // scss require('./a/a.scss'); require('./b/b.scss'); require('./c/c.scss'); require('./d/d.scss'); 

这种方法是非常糟糕的,如何避免这个硬编码的index.js和自动检测块中的新.js和.scss文件目录?

我们可以为.js或.scss定义一些球体(如在Gulp.js中)吗?

index.js

 require.context('./blocks', true, /\.js$/); require.context('./blocks', true, /\.scss$/);