webhook/node_modules/eslint-plugin-import/docs/rules/export.md

33 lines
866 B
Markdown
Raw Normal View History

# import/export
Reports funny business with exports, like repeated exports of names or defaults.
## Rule Details
```js
export default class MyClass { /*...*/ } // Multiple default exports.
function makeClass() { return new MyClass(...arguments) }
export default makeClass // Multiple default exports.
```
or
```js
export const foo = function () { /*...*/ } // Multiple exports of name 'foo'.
function bar() { /*...*/ }
export { bar as foo } // Multiple exports of name 'foo'.
```
In the case of named/default re-export, all `n` re-exports will be reported,
as at least `n-1` of them are clearly mistakes, but it is not clear which one
(if any) is intended. Could be the result of copy/paste, code duplication with
intent to rename, etc.
## Further Reading
- Lee Byron's [ES7] export proposal
[ES7]: https://github.com/leebyron/ecmascript-more-export-from