В чем причина экспорта из другого модуля? - PullRequest
0 голосов
/ 07 октября 2019

Почему вы можете экспортировать из другого модуля?

export * from …;
export { name1, name2, …, nameN } from …;
export { import1 as name1, import2 as name2, …, nameN } from …;

Если импортирующему модулю / скрипту действительно нужны функции из третьего модуля, он может импортировать их сам. Так почему бы и нет? Я не вижу цели этой функции. Создает ли это что-то кроме путаницы, где именно находятся функции, классы и т. Д.?

1 Ответ

3 голосов
/ 07 октября 2019

Это позволяет большую модульную организацию. Например, допустим, вы создаете библиотеку, для которой потребители ожидают, что смогут импортировать все из корня index.js библиотеки. Используя export .. from, вы можете написать функции со связанными функциями в одном и том же файле (или в той же папке), , а затем в index.js, экспортировать их все сразу, несмотря на их распространениепо всей базе кода.

Это проще, чем указывать потребителям библиотеки тщательно искать, из какого подмодуля им нужно будет импортировать конкретный объект.

...