baichun fb412dddfc 堡垒之夜-工具页 | 6 rokov pred | |
---|---|---|
.. | ||
lib | 6 rokov pred | |
test | 6 rokov pred | |
.npmignore | 6 rokov pred | |
.travis.yml | 6 rokov pred | |
README.md | 6 rokov pred | |
index.js | 6 rokov pred | |
package.json | 6 rokov pred |
Create a modified babel preset based on an an existing preset.
Works best with
npm 3
.
npm i -S modify-babel-preset
A single function that takes an existing preset name and a mapping of plugin modifications to apply to that preset. Make sure you have the preset and any added plugins installed as dependencies.
newPreset = modifyBabelPreset(
'existing-preset-name',
{
'plugin-name': false, // remove
'other-plugin': true, // add
'foo': { loose:true } // add + config
}
);
Modification keys are babel plugin names (you can exclude the
babel-plugin-
prefix).
To add a plugin, pass true
, or a configuration object:
{
// just add a plugin without config:
'plugin-name': true,
// add a plugin and set its config
'other-plugin': { loose:true }
}
Note: adding a plugin that is already provided by the preset just overwrites its configuration.
To remove a plugin, pass false
:
{
'plugin-name': false
}
Here's a simple preset. Just this index.js
and a package.json pointing to it with the preset and plugin installed as dependencies.
var modifyBabelPreset = require('modify-babel-preset');
// just export the cloned, modified preset config:
module.exports = modifyBabelPreset('es2015', {
// remove the typeof x==='symbol' transform:
'transform-es2015-typeof-symbol': false,
// add the JSX transform:
'transform-react-jsx': true
});