摘要:網(wǎng)上有很多關(guān)于和的文章,他們大部門都是只講了用法,但是沒有提到性能,打包等關(guān)鍵的東西。比如某個業(yè)務(wù)文件夾下的,用的時候用方便識別,不用重復(fù)在的中添加,也可以用方法提示。如果一個文件兼有以上需求可以同時和
網(wǎng)上有很多關(guān)于export和export default的文章,他們大部門都是只講了用法,但是沒有提到性能,打包等關(guān)鍵的東西。
大家應(yīng)該應(yīng)該能理解import * from "xxx"會把文件中export default的內(nèi)容都打包到文件中,而import {func} from "xxx" 只會把文件中的func導(dǎo)入,這樣勢必export會比export default打包的少。看例子
utils.js
const func1 = () => { console.log("func1"); } const func2 = () => { console.log("func2"); } export default { func1, func2 }
index.js
import { render } from "react-dom"; import common from "./common"; class Index extends Component { render() { common.func1(); return ( 123456 ); } } render(, document.getElementById("app"));
用這種export default的方法那么打包的文件會是怎么樣的呢?我們看看
我們發(fā)現(xiàn)整個文件被打包了
用另一種方式
utils.js
const func1 = () => { console.log("func1"); } const func2 = () => { console.log("func2"); } export { func1, func2 }
index.js
import { render } from "react-dom"; import {func1} from "./common"; class Index extends Component { render() { func1(); return ( 123456 ); } } render(, document.getElementById("app"));
結(jié)果:
只打包了func1
綜上export default確實可能會打包更多不需要的內(nèi)容,但是在某些場景用export default更好。
所以總結(jié)如下:
1.當(dāng)文件存放著很多方法,變量不同場景需要引用不同方法,請用export 2.當(dāng)類只有某幾個方法,并且每次引用都需要用到里面的大部分方法,請用export default, 畢竟還有方法提示 3.當(dāng)值導(dǎo)出一個方法,類請用export default 4.如果一個文件只會被某一個其他文件的子文件,不會被其他文件引用,并且其中的方法都會被用到, 考慮用export default。比如某個業(yè)務(wù)文件夾下的action.js,用的時候用import api from "./action"; 方便識別,不用重復(fù)在import的{}中添加,也可以用方法提示。 4.如果一個文件兼有以上需求 可以同時export和export default
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/102688.html
摘要:源碼解讀閱讀請關(guān)注下代碼注釋打個廣告哪位大佬教我下怎么排版啊,不會弄菜單二級導(dǎo)航撲通是什么首先,你會從源碼里面引入,然后再傳入?yún)?shù)實例化一個路由對象源碼基礎(chǔ)類源碼不選擇模式會默認使用模式非瀏覽器環(huán)境默認環(huán)境根據(jù)參數(shù)選擇三種模式的一種根據(jù)版 router源碼解讀 閱讀請關(guān)注下代碼注釋 打個廣告:哪位大佬教我下sf怎么排版啊,不會弄菜單二級導(dǎo)航(撲通.gif) showImg(https:...
摘要:源碼解讀閱讀請關(guān)注下代碼注釋打個廣告哪位大佬教我下怎么排版啊,不會弄菜單二級導(dǎo)航撲通是什么首先,你會從源碼里面引入,然后再傳入?yún)?shù)實例化一個路由對象源碼基礎(chǔ)類源碼不選擇模式會默認使用模式非瀏覽器環(huán)境默認環(huán)境根據(jù)參數(shù)選擇三種模式的一種根據(jù)版 router源碼解讀 閱讀請關(guān)注下代碼注釋 打個廣告:哪位大佬教我下sf怎么排版啊,不會弄菜單二級導(dǎo)航(撲通.gif) showImg(https:...
摘要:問題什么是調(diào)用棧并且它是的一部分么調(diào)用棧當(dāng)然是的一部分。為什么理解是重要的因為你在每個進程中只能獲取一個調(diào)用棧。它是一個從事件隊列中跳去事件的循環(huán)并且將它們的回調(diào)壓入到調(diào)用棧中。當(dāng)調(diào)用棧為空的時候,事件循環(huán)可以決定下一步執(zhí)行哪一個。 你并不知道Node 原文:You don’t know Node 譯者:neal1991 welcome to star my articles-tra...
摘要:的翻譯文檔由的維護很多人說,阮老師已經(jīng)有一本關(guān)于的書了入門,覺得看看這本書就足夠了。前端的異步解決方案之和異步編程模式在前端開發(fā)過程中,顯得越來越重要。為了讓編程更美好,我們就需要引入來降低異步編程的復(fù)雜性。 JavaScript Promise 迷你書(中文版) 超詳細介紹promise的gitbook,看完再不會promise...... 本書的目的是以目前還在制定中的ECMASc...
閱讀 3256·2023-04-26 02:10
閱讀 2880·2021-10-12 10:12
閱讀 4559·2021-09-27 13:35
閱讀 1519·2019-08-30 15:55
閱讀 1058·2019-08-29 18:37
閱讀 3423·2019-08-28 17:51
閱讀 1954·2019-08-26 13:30
閱讀 1191·2019-08-26 12:09