簡體   English   中英

從'lib'導入{fn1}與從'lib'導入fn1

[英]import {fn1} from 'lib' vs import fn1 from 'lib'

我從lodash導入了一些函數,我的同事告訴我,最好分別導入每個函數,而不是將它們作為一個組導入。

當前方法:

import {fn1, fn2, fn3} from 'lodash';

首選方法:

import fn1 from 'lodash/fn1';
import fn2 from 'lodash/fn2';
import fn3 from 'lodash/fn3';

她的理由是后者會導入較少的代碼,因為它不會導入整個lodash庫。

是這樣嗎

您想要的(以及首選)被稱為搖樹

搖樹是在捆綁過程中刪除未使用的代碼的過程。

執行此操作並利用樹抖動的正確方法是:

import foo from 'lodash/foo' // <-- only import `foo`

不會搖晃:

import { foo } from 'lodash'

顯然不會:

import _ from 'lodash' 

Lodash v4中實現了對此語法的支持。

你可以在這里閱讀更多

根據我可以找到的來源, import x from y; y導入默認導出,在文件中將其稱為x

因此,您的首選方法是使用3個不同的變量名稱導入默認導出3次。

首選方法在生產中可行嗎?

資料來源:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import

https://medium.com/javascript-in-plain-english/javascript-modules-for-beginners-56939088f7d9

我確實相信是import {fn1, fn2, fn3} from 'lodash'; 是導入模塊的不同導出的正確方法,但是,我認為使用這種方法可能會更好

    import {
      fn1, 
      fn2, 
      fn3
    } from 'lodash';

因為如果不再需要它們,則更容易刪除它們中的任何一個

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM