import-js/eslint-plugin-import

[BUG] `no-unused-modules` doesn't support the export-default-from syntax

Open

#1,938 创建于 2020年11月8日

在 GitHub 查看
 (0 评论) (0 反应) (0 负责人)JavaScript (1,540 fork)batch import
bughelp wanted

仓库指标

Star
 (4,946 star)
PR 合并指标
 (平均合并 138天 22小时) (30 天内合并 3 个 PR)

描述

When using the version 2.22.1, the syntax described in the ECMAScript Proposal export default from doesn't seem to be supported by the rule no-unused-modules:

// index.js
export Component from './Component';
$ eslint .
Oops! Something went wrong! :(

ESLint: 7.12.1

TypeError: Cannot read property 'name' of undefined
Occurred while linting /Users/me/project/src/components/index.js:2
    at /Users/me/project/node_modules/eslint-plugin-import/lib/rules/no-unused-modules.js:675:46
    at Array.forEach (<anonymous>)
    at /Users/me/project/node_modules/eslint-plugin-import/lib/rules/no-unused-modules.js:671:32
    at Array.forEach (<anonymous>)
    at updateImportUsage (/Users/me/project/node_modules/eslint-plugin-import/lib/rules/no-unused-modules.js:664:17)
    at Program:exit (/Users/me/project/node_modules/eslint-plugin-import/lib/rules/no-unused-modules.js:895:9)
    at /Users/me/project/node_modules/babel-eslint/node_modules/eslint/lib/linter/safe-emitter.js:45:58
    at Array.forEach (<anonymous>)
    at Object.emit (/Users/me/project/node_modules/babel-eslint/node_modules/eslint/lib/linter/safe-emitter.js:45:38)
    at NodeEventGenerator.applySelector (/Users/me/project/node_modules/babel-eslint/node_modules/eslint/lib/linter/node-event-generator.js:254:26)

As a workaround, we could use this syntax to achieve the same goal:

// index.js
export { default as Component } from './Component';

贡献者指南