1.6.3 • Published 4 years ago

webpack-import-glob-loader2 v1.6.3

Weekly downloads
4
License
MIT
Repository
github
Last release
4 years ago

Build Status npm version

webpack-import-glob-loader2

ES6 import with glob patterns (preloader for Webpack)

(Forked from https://github.com/terpiljenya/import-glob)

Expands globbing patterns for ES6 import statements.


import modules from "./foo/**/*.js";

Expands into

import * as module0 from "./foo/1.js";
import * as module1 from "./foo/bar/2.js";
import * as module2 from "./foo/bar/3.js";

var modules = [module0, module1, module2]

For importing from node module

import modules from "a-node-module/**/*js";

Expands into

import * as module0 from "a-node-module/foo/1.js";
import * as module1 from "a-node-module/foo/bar/2.js";
import * as module2 from "a-node-module/foo/bar/3.js";

var modules = [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";

Install

npm install import-glob-loader --save-dev

Usage

You can use it one of two ways, the recommended way is to use it as a preloader

// ./webpack.config.js

module.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.js
import "./**/*.js";

// index.js
import 'webpack-import-glob-loader!foo/bar.js';
1.6.3

4 years ago