JavaScript中導(dǎo)出模塊的不同方式饥悴?

export defaultexport const 是 JavaScript 中用于導(dǎo)出模塊的兩種不同的導(dǎo)出語法。

  1. export default:

    • 用于導(dǎo)出模塊的默認(rèn)值粉渠。
    • 可以在一個(gè)模塊中只有一個(gè) export default哈恰。
    • 在導(dǎo)入時(shí),可以使用任意名稱來引用默認(rèn)導(dǎo)出的值臼氨。
    • 導(dǎo)入時(shí)可以省略花括號(hào) {}掺喻。

    示例:

    // 模塊A.js
    const name = 'John';
    export default name;
    
    // 模塊B.js
    import myName from './A.js';
    console.log(myName); // 輸出: 'John'
    
  2. export const:

    • 用于導(dǎo)出命名的常量或變量。
    • 可以導(dǎo)出多個(gè)常量或變量。
    • 在導(dǎo)入時(shí)感耙,需要使用相同的名稱引用導(dǎo)出的值褂乍。
    • 導(dǎo)入時(shí)需要使用花括號(hào) {} 包裹導(dǎo)入的值。

    示例:

    // 模塊A.js
    export const name = 'John';
    export const age = 25;
    
    // 模塊B.js
    import { name, age } from './A.js';
    console.log(name); // 輸出: 'John'
    console.log(age);  // 輸出: 25
    

需要根據(jù)使用場(chǎng)景和需求選擇適當(dāng)?shù)膶?dǎo)出方式即硼。如果你的模塊只導(dǎo)出一個(gè)默認(rèn)值树叽,可以使用 export default。如果你需要導(dǎo)出多個(gè)命名的常量或變量谦絮,可以使用 export const题诵。在導(dǎo)入時(shí)也要根據(jù)導(dǎo)出方式使用相應(yīng)的語法進(jìn)行導(dǎo)入。

當(dāng)涉及到模塊的導(dǎo)入和導(dǎo)出時(shí)层皱,除了 export defaultexport const性锭,還有其他一些常用的導(dǎo)出語法和導(dǎo)入方式。

其他導(dǎo)出語法包括:

  1. 導(dǎo)出命名的函數(shù)或類:

    export function myFunction() {
      // 函數(shù)邏輯...
    }
    
    export class MyClass {
      // 類定義...
    }
    
  2. 導(dǎo)出命名的變量:

    export const myVariable = 'Hello';
    export let myOtherVariable = 42;
    
  3. 導(dǎo)出多個(gè)命名的變量或函數(shù):

    const name = 'John';
    const age = 25;
    export { name, age };
    
  4. 導(dǎo)出時(shí)重命名:

    const myVariable = 'Hello';
    export { myVariable as greeting };
    

除了 import 語句用于導(dǎo)入模塊之外叫胖,還有其他導(dǎo)入方式:

  1. 導(dǎo)入默認(rèn)導(dǎo)出的值:

    import myName from './A.js';
    
  2. 導(dǎo)入具名導(dǎo)出的值:

    import { name, age } from './A.js';
    
  3. 導(dǎo)入所有導(dǎo)出的值到一個(gè)對(duì)象中:

    import * as myModule from './A.js';
    console.log(myModule.name);
    console.log(myModule.age);
    

進(jìn)階的技巧和用法:

  1. 默認(rèn)導(dǎo)出和具名導(dǎo)出的混合使用:
    在一個(gè)模塊中草冈,可以同時(shí)使用默認(rèn)導(dǎo)出和具名導(dǎo)出。這種情況下瓮增,可以在導(dǎo)入語句中混合使用默認(rèn)導(dǎo)入和具名導(dǎo)入怎棱。

    示例:

    // 模塊A.js
    export default 'Hello';
    export const name = 'John';
    
    // 模塊B.js
    import defaultGreeting, { name } from './A.js';
    console.log(defaultGreeting); // 輸出: 'Hello'
    console.log(name); // 輸出: 'John'
    
  2. 導(dǎo)出時(shí)重命名和導(dǎo)入時(shí)重命名的結(jié)合使用:
    可以在導(dǎo)出模塊時(shí)使用重命名,然后在導(dǎo)入模塊時(shí)再次進(jìn)行重命名绷跑。這種方式可以更靈活地控制導(dǎo)入和導(dǎo)出的命名拳恋。

    示例:

    // 模塊A.js
    const myVariable = 'Hello';
    export { myVariable as greeting };
    
    // 模塊B.js
    import { greeting as message } from './A.js';
    console.log(message); // 輸出: 'Hello'
    
  3. 導(dǎo)入和導(dǎo)出時(shí)使用別名:
    可以使用 as 關(guān)鍵字來創(chuàng)建導(dǎo)入和導(dǎo)出時(shí)的別名,以提高代碼的可讀性或避免命名沖突砸捏。

    示例:

    // 模塊A.js
    const myVariable = 'Hello';
    export { myVariable as greeting };
    
    // 模塊B.js
    import { greeting as welcomeMessage } from './A.js';
    console.log(welcomeMessage); // 輸出: 'Hello'
    
  • export default 用于導(dǎo)出模塊的默認(rèn)值谬运。一個(gè)模塊只能有一個(gè)默認(rèn)導(dǎo)出,而且在導(dǎo)入時(shí)可以使用任意名稱引用默認(rèn)導(dǎo)出的值垦藏。

  • export const 用于導(dǎo)出命名的常量或變量梆暖。可以導(dǎo)出多個(gè)常量或變量掂骏,并且在導(dǎo)入時(shí)需要使用相同的名稱引用導(dǎo)出的值轰驳。

總結(jié)一下兩者的區(qū)別:

  • export default 導(dǎo)出的是默認(rèn)值,導(dǎo)入時(shí)可以使用任意名稱弟灼。
  • export const 導(dǎo)出的是具名的常量或變量级解,導(dǎo)入時(shí)需要使用相同的名稱。

對(duì)于在 Vue 中的使用袜爪,如果你只需要導(dǎo)出一個(gè)默認(rèn)的 Vue 組件或?qū)ο笕涑茫梢允褂?export default薛闪。如果你需要導(dǎo)出多個(gè)組件或?qū)ο笮凉荩梢允褂?export const

### 干貨:關(guān)注我或微.信.公.眾.號(hào):全棧思維導(dǎo)航,目前在寫一套開源項(xiàng)目(社交類):基于Spring Boot + Vue3 + 小程序 + APP的開源項(xiàng)目昙篙。關(guān)注不錯(cuò)過@白础!苔可!

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末缴挖,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子焚辅,更是在濱河造成了極大的恐慌映屋,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,858評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件同蜻,死亡現(xiàn)場(chǎng)離奇詭異棚点,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)湾蔓,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,372評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門瘫析,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人默责,你說我怎么就攤上這事贬循。” “怎么了桃序?”我有些...
    開封第一講書人閱讀 165,282評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵杖虾,是天一觀的道長。 經(jīng)常有香客問我媒熊,道長亏掀,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,842評(píng)論 1 295
  • 正文 為了忘掉前任泛释,我火速辦了婚禮滤愕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘怜校。我一直安慰自己间影,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,857評(píng)論 6 392
  • 文/花漫 我一把揭開白布茄茁。 她就那樣靜靜地躺著魂贬,像睡著了一般。 火紅的嫁衣襯著肌膚如雪裙顽。 梳的紋絲不亂的頭發(fā)上付燥,一...
    開封第一講書人閱讀 51,679評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音愈犹,去河邊找鬼键科。 笑死闻丑,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的勋颖。 我是一名探鬼主播嗦嗡,決...
    沈念sama閱讀 40,406評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼饭玲!你這毒婦竟也來了侥祭?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,311評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤茄厘,失蹤者是張志新(化名)和其女友劉穎矮冬,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體次哈,經(jīng)...
    沈念sama閱讀 45,767評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡欢伏,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了亿乳。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片硝拧。...
    茶點(diǎn)故事閱讀 40,090評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖葛假,靈堂內(nèi)的尸體忽然破棺而出障陶,到底是詐尸還是另有隱情,我是刑警寧澤聊训,帶...
    沈念sama閱讀 35,785評(píng)論 5 346
  • 正文 年R本政府宣布抱究,位于F島的核電站,受9級(jí)特大地震影響带斑,放射性物質(zhì)發(fā)生泄漏鼓寺。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,420評(píng)論 3 331
  • 文/蒙蒙 一勋磕、第九天 我趴在偏房一處隱蔽的房頂上張望妈候。 院中可真熱鬧,春花似錦挂滓、人聲如沸苦银。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,988評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽幔虏。三九已至,卻和暖如春贝椿,著一層夾襖步出監(jiān)牢的瞬間想括,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,101評(píng)論 1 271
  • 我被黑心中介騙來泰國打工烙博, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留瑟蜈,地道東北人烟逊。 一個(gè)月前我還...
    沈念sama閱讀 48,298評(píng)論 3 372
  • 正文 我出身青樓,卻偏偏與公主長得像踪栋,于是被迫代替她去往敵國和親焙格。 傳聞我的和親對(duì)象是個(gè)殘疾皇子图毕,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,033評(píng)論 2 355

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