webpack-proxy
Install
yarn add webpack-proxy
Usage
Let's say you want to use buble-loader
, you can just add it to your webpack config without installing buble-loader
and buble
, since webpack-proxy
will handle that for you!
📝 webpack.config.js:
const proxy = moduleexports = entry: './index.js' module: rules: test: /\.js$/ use:
How does it work?
In:
Out:
loader: require options: yourLoader loader: require options: loader: yourLoaderloader version: optionsversion dependencies: optionsdependencies peerFilter: optionspeerFilter
ensure-loader
is used to install missing dependencies, proxy-loader
is used to run your loader.
webpack itself will check if your loader exists before compiling, but we want to handle this ourselves via ensure-loader
, which is why we use proxy-loader
here.
API
proxy(UseEntry, [options])
Return an array of UseEntry.
options
version
Type: string
Set the version range of the missing loader to install.
dependencies
Type: string[]
Add extra dependencies to install alongside your loader. e.g. for sass-loader
you need to add node-sass
to dependencies
since it's not listed as peerDependencies
of sass-loader
.
peerFilter
Type: (depName: string, version: string) => boolean
Filter peer dependencies, return true
to include, false
otherwise.
proxy.chain(Rule, UseEntry, [options])
Add UseEntry to certain webpack-chain rule.
Credits
Heavily inspired by Parcel bundler and preact-cli.
Contributing
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request :D
Author
webpack-proxy © egoist, Released under the MIT License.
Authored and maintained by egoist with help from contributors (list).
github.com/egoist · GitHub @egoist · Twitter @_egoistlily