- Notifications
You must be signed in to change notification settings - Fork6
Skip adding certain output files to the html file. Built as a drop-in replacement for html-webpack-exclude-assets-plugin and works with newer html-webpack-plugin versions
License
localyost3000/html-webpack-skip-assets-plugin
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Skip adding certain output files to the html file. Built as a drop-in replacement forhtml-webpack-exclude-assets-plugin and works with newerhtml-webpack-plugin versions
- Install via
npm i -D html-webpack-skip-assets-plugin
- Add to your webpack config AFTER HtmlWebpackPlugin
varHtmlWebpackSkipAssetsPlugin=require('html-webpack-skip-assets-plugin').HtmlWebpackSkipAssetsPlugin;// OR for import styleimport{HtmlWebpackSkipAssetsPlugin}from'html-webpack-skip-assets-plugin' ...plugins:[newHtmlWebpackPlugin({filename:join(OUTPUT_DIR,'./dist/index.html'),// Skip Assets options can be added hereexcludeAssets:['polyfill.**.js',/styles\..*js$/i,(asset)=>(asset.attributes&&asset.attributes['x-skip'])]// ORskipAssets:['polyfill.**.js',/styles\..*js$/i,(asset)=>(asset.attributes&&asset.attributes['x-skip'])]}),newHtmlWebpackSkipAssetsPlugin({// or they can be passed in on the plugin. These 4 lists are combined before runningexcludeAssets:['polyfill.**.js',/styles\..*js$/i,(asset)=>(asset.attributes&&asset.attributes['x-skip'])]// ORskipAssets:['polyfill.**.js',/styles\..*js$/i,(asset)=>(asset.attributes&&asset.attributes['x-skip'])]})]
The plugin takes a configuration argument with a key calledskipAssets
. This is an array of file globs (provided viaminimatch), regex patterns, or functions which accept the asset and return a boolean representing wheter or not to skip adding to the output html. In order to ease migration fromhtml-webpack-exclude-assets-plugin, the plugin also supports passingexcludeAssets
as the option key, as well as the ability to add either key to the HtmlWebpackPlugin options. All provided lists will be concatenated and used to filter the assets.
This exclusion will also work forinject: false
:
newHtmlWebpackPlugin({inject:false,excludeAssets:['polyfill.**.js',/styles\..*js$/i,(asset)=>(asset.attributes&&asset.attributes['x-skip'])]templateContent:({htmlWebpackPlugin})=>` <html> <head>${htmlWebpackPlugin.tags.headTags} </head> <body>${htmlWebpackPlugin.tags.bodyTags} </body> </html> `})
Testing is done via ts-node and mocha. Test files can be found in/spec
, and will be auto-discovered as long as the file ends in.spec.ts
. Just runnpm test
after installing to see the tests run.
About
Skip adding certain output files to the html file. Built as a drop-in replacement for html-webpack-exclude-assets-plugin and works with newer html-webpack-plugin versions
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors4
Uh oh!
There was an error while loading.Please reload this page.