Я пишу этот пост, потому что (я полагаю, я устал), я не совсем понял ни MDN, ни описание других людей, и лучший способ понять что-то - это научить этому других людей. Просто я не вижу простого ответа на вопрос.
Что такое «экспорт по умолчанию» в javascript?
В экспорте по умолчанию наименование импорта полностью независимо, и мы можем использовать любое имя, которое нам нравится.
Я проиллюстрирую эту строку на простом примере.
Допустим, у нас есть 3 модуля и index.html:
- modul.js
- modul2.js
- modul3.js
- index.html
modul.js
export function hello() {
console.log("Modul: Saying hello!");
}
export let variable = 123;
modul2.js
export function hello2() {
console.log("Module2: Saying hello for the second time!");
}
export let variable2 = 456;
modul3.js
export default function hello3() {
console.log("Module3: Saying hello for the third time!");
}
index.html
<script type="module">
import * as mod from './modul.js';
import {hello2, variable2} from './modul2.js';
import blabla from './modul3.js'; //! Here is the important stuff - we name the variable for the module as we like
mod.hello();
console.log("Module: " + mod.variable);
hello2();
console.log("Module2: " + variable2);
blabla();
</script>
Выход:
modul.js:2:10 -> Modul: Saying hello!
index.html:7:9 -> Module: 123
modul2.js:2:10 -> Module2: Saying hello for the second time!
index.html:10:9 -> Module2: 456
modul3.js:2:10 -> Module3: Saying hello for the third time!
Итак, более длинное объяснение :
«экспорт по умолчанию» используется, если вы хотите экспортировать одну вещь для модуля.
Таким образом, важно то, что вы импортируете blabla из './modul3.js' - вместо этого мы можем сказать:
"импортировать pamelanderson из './modul3.js", а затем pamelanderson (); Это будет прекрасно работать, когда мы используем «экспорт по умолчанию», и в основном это так - он позволяет нам называть его как угодно, когда он используется по умолчанию .
Ps Если вы хотите протестировать пример - сначала создайте файлы, затем разрешите CORS в браузере -> если вы используете тип firefox в URL браузера: about: config -> Search for "privacy.file_unique_origin" -> change в «false» -> открыть index.html -> нажмите F12, чтобы открыть консоль и увидеть вывод -> Наслаждайтесь и не забудьте вернуть настройки cors по умолчанию.
Ps2 извините за глупые переменные именования
Больше информации @
link2medium , link2mdn1 , link2mdn2