Обидва вони є дійсними.
Метод 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порівнянні зimport {x} from y