Skip to content
This repository was archived by the owner on Mar 17, 2021. It is now read-only.
/ raw-loader Public archive

A loader for webpack that allows importing files as a String

License

Notifications You must be signed in to change notification settings

webpack-contrib/raw-loader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2c4d891 · Jan 25, 2021

History

56 Commits
Oct 13, 2020
Oct 9, 2020
Oct 9, 2020
Nov 25, 2019
Jun 5, 2019
Jun 5, 2019
Mar 18, 2019
Feb 12, 2019
Jun 5, 2019
Apr 15, 2020
Oct 9, 2020
Dec 7, 2016
Jan 25, 2021
Nov 25, 2019
Jun 5, 2019
Jun 5, 2019
Apr 15, 2020
Oct 9, 2020
Oct 9, 2020

Repository files navigation

npm node deps tests coverage chat size

raw-loader

DEPREACTED for v5: please consider migrating to asset modules.

A loader for webpack that allows importing files as a String.

Getting Started

To begin, you'll need to install raw-loader:

$ npm install raw-loader --save-dev

Then add the loader to your webpack config. For example:

file.js

import txt from './file.txt';

webpack.config.js

// webpack.config.js
module.exports = {
  module: {
    rules: [
      {
        test: /\.txt$/i,
        use: 'raw-loader',
      },
    ],
  },
};

And run webpack via your preferred method.

Options

Name Type Default Description
esModule {Boolean} true Uses ES modules syntax

esModule

Type: Boolean Default: true

By default, raw-loader generates JS modules that use the ES modules syntax. There are some cases in which using ES modules is beneficial, like in the case of module concatenation and tree shaking.

You can enable a CommonJS module syntax using:

webpack.config.js

module.exports = {
  module: {
    rules: [
      {
        test: /\.txt$/i,
        use: [
          {
            loader: 'raw-loader',
            options: {
              esModule: false,
            },
          },
        ],
      },
    ],
  },
};

Examples

Inline

import txt from 'raw-loader!./file.txt';

Beware, if you already define loader(s) for extension(s) in webpack.config.js you should use:

import css from '!!raw-loader!./file.txt'; // Adding `!!` to a request will disable all loaders specified in the configuration

Contributing

Please take a moment to read our contributing guidelines if you haven't yet done so.

CONTRIBUTING

License

MIT