import-js/eslint-plugin-import

New rules regarding namespaces used as values

Offen

#532 geöffnet am 29.08.2016

 (8 Kommentare) (1 Reaktion) (0 zugewiesene Personen)JavaScript (1.549 Forks)batch import
acceptedhelp wantedrule proposalsemver-minor

Repository-Metriken

Stars
 (5.938 Sterne)
PR-Merge-Metriken
 (Durchschn. Merge 138T 22h) (3 gemergte PRs in 30 T)

Beschreibung

The following patterns are considered not warnings:

import * as foo from "./foo";

foo.bar();
const baz = foo.baz;
const {property} = foo;

The following patterns are considered warnings:

import * as foo from "./foo";

foo();
const [value] = foo;
func(foo);
func(...foo);
const alias = foo;
const {child} = foo; // foo.child is an exported namespace

Basically, warn if a namespace is used in a way that cannot be validated (aliased, called, destructured as array, passed as argument, etc.). There's no overlap with namespace.allowComputed in the above, but that option could be merged into this one, or these merged into another namespace option.

Contributor Guide