ES6 import with glob patterns (preloader for Webpack)
(Forked from https://github.com/terpiljenya/import-glob)
Expands globbing patterns for ES6 import statements.
importmodulesfrom"./foo/**/*.js";Expands into
import*asmodule0from"./foo/1.js";import*asmodule1from"./foo/bar/2.js";import*asmodule2from"./foo/bar/3.js";varmodules=[module0,module1,module2]For importing from node module
importmodulesfrom"a-node-module/**/*js";Expands into
import*asmodule0from"a-node-module/foo/1.js";import*asmodule1from"a-node-module/foo/bar/2.js";import*asmodule2from"a-node-module/foo/bar/3.js";varmodules=[module0,module1,module2]For side effects:
import"./foo/**/*.scss";Expands into
import"./foo/1.scss";import"./foo/bar/2.scss";For sass:
@import"./foo/**/*.scss";Expands into
@import"./foo/1.scss";
@import"./foo/bar/2.scss";npm install webpack-import-glob-loader --save-devYou can use it one of two ways, the recommended way is to use it as a preloader
// ./webpack.config.jsmodule.exports={
...
module: {rules: [{test: /\.js$/,use: 'webpack-import-glob-loader'},{test: /\.scss$/,use: 'webpack-import-glob-loader'},]}};Alternatively you can use it as a chained loader
// foo/bar.jsimport"./**/*.js";// index.jsimport'webpack-import-glob-loader!foo/bar.js';