import-js/eslint-plugin-import

[no-unused-modules] Improve for "import * as __ from __"

オープン

#1,775 opened on 2020/05/21

 (6 件のコメント) (1 件のリアクション) (0 人の担当者)JavaScript (1,549 件のフォーク)batch import
enhancementhelp wantedrule proposal

Repository metrics

Stars
 (5,938 個のスター)
PR merge metrics
 (平均マージ 138d 22h) (30d で 3 merged PRs)

説明

If a file with named exports is imported as import * as xxx from './xxx' the rule assumes that all exports of this file have been used.

Would it be possible to report exports that never have been accessed?

Example:

given file-f:

import * as fileG from './file-g'

const x = fileG.a
fileG.b()

and file-g

export const a = 7 // will not be reported
export const b = () => {} // will not be reported
export const c = 5 // will be reported

Of course this can only work as long as a module is not access like this:

import * as fileG from './fileG'
fileG['b']()

In this case the current behaviour would apply and nothing would be reported.

We heavily rely on the import * as __ from __ syntax, so we would rely profit from this change. In any case, thanks a lot for all the effort that went into that plugin already!

コントリビューターガイド