WEBPACK PLUGIN
███████╗██╗ ██╗ ██████╗ ███████╗████████╗ ██████╗ ██████╗ ███████╗
██╔════╝██║ ██║██╔════╝ ██╔════╝╚══██╔══╝██╔═══██╗██╔══██╗██╔════╝
███████╗██║ ██║██║ ███╗ ███████╗ ██║ ██║ ██║██████╔╝█████╗
╚════██║╚██╗ ██╔╝██║ ██║ ╚════██║ ██║ ██║ ██║██╔══██╗██╔══╝
███████║ ╚████╔╝ ╚██████╔╝ ███████║ ██║ ╚██████╔╝██║ ██║███████╗
╚══════╝ ╚═══╝ ╚═════╝ ╚══════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝
Package info
Installation
npm i webpack-svgstore-plugin --save-dev
We do not maintain a version for node.js 0.12 anymore
Only:
- "7.0+"
- "6.0"
- "4.0"
Webpack version support
Use webpack-svgstore-plugin@3.x.x for Webpack 1.x.x
Use webpack-svgstore-plugin@4.x.x for Webpack 2.x.x
Webpack configuration
Usage
1) require plugin
//webpack.config.jsvar SvgStore = ;moduleexports = plugins: // create svgStore instance object // svgo options svgoOptions: plugins: removeTitle: true prefix: 'icon'
2) Put function mark at your chunk
// plugin will find marks and build sprite var __svg__ = path: './assets/svg/**/*.svg' name: 'assets/svg/[hash].logos.svg' ;// will overwrite to var __svg__ = { filename: "assets/svg/1466687804854.logos.svg" }; // also you can use next variables for sprite compile// var __sprite__ = { path: './assets/svg/minify/*.svg', name: 'assets/svg/[hash].icons.svg' };// var __svgstore__ = { path: './assets/svg/minify/*.svg', name: 'assets/svg/[hash].stuff.svg' };// var __svgsprite__ = { path: './assets/svg/minify/*.svg', name: 'assets/svg/[hash].1logos.svg' }; // require basic or custom sprite loader__svg__;
Dear friends...
As you know, last version has integrated ajax sprite loader. Right now, you can override that. Or create your own sprite ajax loader function.
3) HTML code for happy using
HTML:
React JSX:
Plugin settings
options
template
- add custom jade template layout (optional)svgoOptions
- options for svgo (optional, default:{}
)
License
NPM package available here: webpack-svgstore-plugin
MIT © Chernobrov Mike, Gordey Levchenko