Skip to content

Oneof loader for webpack loaders select, the options similar with builtin oneOf

Notifications You must be signed in to change notification settings

allex/oneof-loader

Repository files navigation

oneof-loader

Oneof loader for webpack loaders select, the options similar with builtin oneOf, An array of loaders from which only the first matching loaders is used when the conditions matches.

Installation

yarn add oneof-loader -D --production=false

Usage

Within your webpack configuration object, you'll need to add the oneof-loader to the list of modules, like so:

module: {
  rules: [
    {
      test: /\.svg$/,
      use: {
        loader: 'oneof-loader',
        options: {
          oneOf: [
            {
              test: /\/src\/assets\/icons\/svg\//,
              loader: 'svg-sprite-loader',
              options: {
                symbolId: 'icon-[name]',
                extract: false
              }
            },
            {
              test: /\/src\//,
              exclude: [
                /iconfont\//,
                resolve('src/assets/img')
              ],
              use: [
                { loader: 'babel-loader' },
                { loader: 'vue-svg-loader' }
              ]
            },
            {
              loader: 'svg-url-loader',
              options: {
                stripdeclarations: true,
                limit: 1024,
                name: 'img/[name].[hash:8].[ext]'
              }
            }
          ]
        }
      }
    }
  ]
}

License

MIT Copyright (c) Allex Wang

About

Oneof loader for webpack loaders select, the options similar with builtin oneOf

Resources

Stars

Watchers

Forks

Packages

No packages published