Package Exports
- babel-plugin-remove-import-export
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (babel-plugin-remove-import-export) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
babel-plugin-remove-import-export
A babel plugin to remove import and export declaration in the source file.
This will be useful if you just want to provide a code snippet without the extra module syntex, for example LeetCode.
Warning: This plugin will break the context of the script, use with caution.
Example
In
import { LinkedList } from 'some-lib';
function foo() {
return new LinkedList(['bar']);
}
export class Solution {
add(a, b) {
return a + b;
}
}
export default foo;Out
function foo() {
return new LinkedList(['bar']);
}
class Solution {
add(a, b) {
return a + b;
}
}Installation
yarn add -D babel-plugin-remove-import-exportOr, use npm:
npm install babel-plugin-remove-import-export --save-devUsage
Via .babelrc (Recommended)
.babelrc
// without options
{
"plugins": ["remove-import-export"]
}
// with options
{
"plugins": [
["remove-import-export", {
"removeImport": false,
"removeExport": false,
"removeExportDefault": false,
"preseveNamedDeclaration": false
}]
]
}Via CLI
babel --plugins remove-import-export script.jsVia Node API
require("@babel/core").transform("code", {
plugins: ["remove-import-export"]
});Options
removeImport
boolean, defaults to true.
removeExport
boolean, defaults to true.
removeExportDefault
boolean, defaults to true. Will always remove default export if removeExport is true.
preseveNamedDeclaration
boolean, defaults to true.
Set In OutExample
preseveNamedDeclaration to false will not keep the declaration after export keyword.function foo() {
return 'bar';
}
export class Solution {
add(a, b) {
return a + b;
}
}
function foo() {
return 'bar';
}