ES6:export default 和 export 區(qū)別

export default 和 export 區(qū)別:

1.export與export default均可用于導(dǎo)出常量、函數(shù)、文件、模塊等
2.你可以在其它文件或模塊中通過(guò)import+(常量 | 函數(shù) | 文件 | 模塊)名的方式,將其導(dǎo)入,以便能夠?qū)ζ溥M(jìn)行使用
3.在一個(gè)文件或模塊中,export、import可以有多個(gè),export default僅有一個(gè)
4.通過(guò)export方式導(dǎo)出,在導(dǎo)入時(shí)要加{ },export default則不需要

1.export
//a.js
export const str = "blablabla~";
export function log(sth) { 
  return sth;
}
對(duì)應(yīng)的導(dǎo)入方式:

//b.js
import { str, log } from 'a'; //也可以分開(kāi)寫兩次,導(dǎo)入的時(shí)候帶花括號(hào)

2.export default
//a.js
const str = "blablabla~";
export default str;
對(duì)應(yīng)的導(dǎo)入方式:

//b.js
import str from 'a'; //導(dǎo)入的時(shí)候沒(méi)有花括號(hào)

使用export default命令,為模塊指定默認(rèn)輸出,這樣就不需要知道所要加載模塊的變量名

//a.js
let sex = "boy";
export default sex(sex不能加大括號(hào))
//原本直接export sex外部是無(wú)法識(shí)別的,加上default就可以了.但是一個(gè)文件內(nèi)最多只能有一個(gè)export default。
其實(shí)此處相當(dāng)于為sex變量值"boy"起了一個(gè)系統(tǒng)默認(rèn)的變量名default,自然default只能有一個(gè)值,所以一個(gè)文件內(nèi)不能有多個(gè)export default。
// b.js
本質(zhì)上,a.js文件的export default輸出一個(gè)叫做default的變量,然后系統(tǒng)允許你為它取任意名字。所以可以為import的模塊起任何變量名,且不需要用大括號(hào)包含
import any from "./a.js"
import any12 from "./a.js" 
console.log(any,any12)   // boy,boy
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容