一个用于babel-minify的 webpack 插件 - 基于 babel 的 minifier
npm install babel-minify-webpack-plugin --save-dev
// webpack.config.js
const MinifyPlugin = require("babel-minify-webpack-plugin");
module.exports = {
entry: //...,
output: //...,
plugins: [
new MinifyPlugin(minifyOpts, pluginOpts)
]
}
minifyOpts
被传递给 babel-preset-minify。 你可以在包目录中找到所有可用的选项。
Default: {}
test
: JS文件扩展名正则表达式。 默认: /\.js($|\?)/i
comments
: 保留注释。 默认: /^\**!|@preserve|@license|@cc_on/
, falsy
值将移除所有注释。可以接受函数,带有测试属性的(正则)的对象和值。sourceMap
: 默认: 使用 webpackConfig.devtool。 这里的设置会覆写devtool
的设置。parserOpts
: 配置具有特殊解析器选项的babel。babel
: 传入一个自定义的 babel-core,代替原来的。 require("babel-core")
minifyPreset
: 传入一个自定义的 minify preset,代替原来的。 - require("babel-preset-minify")
.你也可以在webpack中使用babel-loader,引入 minify
作为一个预设并且应该运行的更快 - 因为 babel-minify
将运行在更小的文件。但是,这个插件为什么还存在呢?
mangle: { topLevel: true }
。node_modules
不通过 babel-loader 运行时,babel-minify 优化不会应用于被排除的文件,因为它们不会通过 minifier。Boopathi Rajaa | Juho Vepsäläinen | Joshua Wiens | Kees Kluskens | Sean Larkin |