babel-plugin-minify-dead-code-elimination
Example
In
function foo() {var x = 1;}function bar() { var x = f(); }function baz() {var x = 1;console.log(x);function unused() {return 5;}}
Out
function foo() {}function bar() { f(); }function baz() {console.log(1);}
Installation
npm install babel-plugin-minify-dead-code-elimination --save-dev
Usage
Via .babelrc (Recommended)
.babelrc
// without options{"plugins": ["minify-dead-code-elimination"]}// with options{"plugins": ["minify-dead-code-elimination", { "optimizeRawSize": true }]}
Via CLI
babel --plugins minify-dead-code-elimination script.js
Via Node API
require("@babel/core").transform("code", {plugins: ["minify-dead-code-elimination"]});
Options
keepFnName- prevent plugin from removing function name. Useful for code depending onfn.namekeepFnArgs- prevent plugin from removing function args. Useful for code depending onfn.lengthkeepClassName- prevent plugin from removing class name. Useful for code depending oncls.nametdz- Account for TDZ (Temporal Dead Zone)
You can read more about configuring plugin options here