Оба они действительны.
Метод 1 предоставляет именованный экспорт . Ключевым моментом здесь является то, что вы можете экспортировать больше чем одну вещь. Это следует использовать вместо экспорта объекта с несколькими свойствами. Когда вы импортируете модуль с именованным экспортом, используйте import {a, b} from c
.
Метод 2 обеспечивает экспорт по умолчанию . По умолчанию может быть только один экспорт. Это в основном используется, когда вы экспортируете одну вещь, например class
, или одну, function
которую вы ожидаете использовать без какой-либо дополнительной поддержки. Когда вы импортируете модуль с экспортом по умолчанию, используйте import d from c
.
Обратите внимание, что вы можете использовать оба! так что, если у вас есть основная, основная функция с горсткой иногда используемых помощников, вы можете export
использовать помощники и export default
основной. Когда вы импортируете модуль и нуждаетесь в обоих видах экспорта, используйте import d, {a, b} from c
.
Еще один вариант , который вы можете получить по имени экспорта путем перечисления их в конце модуля, например , так: export {a,b,c}
. Вы также можете переименовать их export {a as $a, b as c}
.
Я получил все это из этой статьи , которая является лучшим источником последней информации о модуле es6, которую мне удалось найти.
import x from y
vsimport {x} from y