Встряхивание дерева в модуле пространства имен - PullRequest
0 голосов
/ 22 мая 2018

Существует модуль, который используется в качестве пространства имен (по соображениям тестируемости или иначе):

export function bar() {}

export function baz() {
    this.bar();
}

export function qux() {}

Это может считаться плохой практикой, поскольку baz зависит от контекста и не может быть импортирован отдельнокак названо export:

import * as Foo from './foo';
Foo.baz();

Можно ли предположить, что this.bar не влияет на механизм встряхивания дерева, а bar и qux будут потрясены деревом?

Можно ли заставить упаковщик знать о связи между bar и baz, поэтому, если используется Foo.baz, только qux расшатан по дереву?

Вопрос в первую очередь касаетсяПотрясает дерево веб-пакетов, но также приветствуются объяснения для других упаковщиков (Rollup).

...