我正在構建一個我自己的工具來反編譯和打包相關的js文件(用ES6編寫)到一個包中。到目前爲止,它與本地文件一樣,但是當我來到公共模塊,例如,反應和redux等,它是不同的。我想知道如何將這些模塊包含到捆綁中?我發現在大多數分佈式版本的公共模塊中總是存在dist文件夾。因此,dist文件夾是否始終在任何模塊目錄中可用?是dist文件夾總是在節點模塊中可用
1
A
回答
0
Webpack使用與Node.js相同的模塊分辨率。 node_modules
有一個package.json
其中有一個main
字段,該字段確定在您的代碼中導入模塊時正在導入哪個文件。此外,webpack在package.json
中查找browser
或module
字段,如果它們存在,則優先選擇main
。這使得發佈與常規Node.js構建不同的構建變得容易(例如使用ES模塊(import
/export
),但Node.js不支持這些構件,但是通過像webpack這樣的捆綁器)。此行爲可以使用選項resolve.mainFields進行配置。舉個例子,看看package.json
of Redux。
無這些字段是強制性的,但至少main
應該存在,所以你可以簡單地導入一個模塊:自動
const module = require('module');
的WebPack:
import module from 'module';
或用require
包括您導入到包中的模塊。
的dist
目錄沒有什麼特殊的,但它是很常見的有dist
目錄中包含的UMD版本。特別是因爲Unpkg允許您導入節點模塊而無需手動將其發佈到CDN,因此它默認使用dist
或umd
(如主頁底部所述)。
+0
很多,現在我明白了。 – feiyuerenhai
相關問題
- 1. 模塊文件夾中是否可以有magento模板文件?
- 2. 總是可用的公共文件夾
- 3. Yeoman - 更新應用程序文件夾中的節點模塊
- 4. 從本地文件夾引用節點模塊
- 5. 使用咕嚕任務時,RequireJs模塊在節點中總是返回undefined
- 6. 在通用文件夾中安裝Angular 2應用程序的節點模塊
- 7. 總是(節點js)不總是工作
- 8. 在路由文件節點(不是節點模式)中包含js文件
- 9. 節點腳本中的可用模塊
- 10. 是mapnik節點模塊可用於更高版本的節點(如4.0.0)?
- 11. 未在項目文件夾中創建Webpack dist文件夾?
- 12. Python模塊進口本身,而不是DIST模塊
- 13. 如何正確安裝節點模塊到子文件夾?
- 14. 節點模塊是否需要對方
- 15. NPM模塊是在/ node_modules文件夾中但無法找到?
- 16. 包裝子模塊與彙總節點
- 17. npm install不會將各個節點模塊的相關性安裝到各個節點模塊文件夾
- 18. 是Dataframe.toPandas總是在驅動程序節點上還是在工作節點上?
- 19. 如何將所有節點模塊安裝在不同的文件夾中?
- 20. 總是詢問文件不存在bin/debug文件夾中
- 21. 用Github發佈「Dist」文件夾
- 22. 用setuptools更改默認dist文件夾
- 23. $節點 - > nextSibling總是給DOMAttr(文本節點只)
- 24. JavaScript類是否可以接受節點模塊?
- 25. Gulp'start'創建錯誤而不是創建'DIst'文件夾
- 26. 服務角DIST到Tomcat是閱讀的路線爲文件夾
- 27. 在Angularjs中使用節點模塊
- 28. 在Laravel中使用節點模塊
- 29. 在Angular 2中使用節點模塊
- 30. PHP郵件總是出現在垃圾郵件文件夾中
不,這將取決於具體的第三方庫。 – jonrsharpe
不,'@ angular'和'rxjs'等等,沒有'dist'文件夾。 – Arg0n
那麼如何包含任何模塊的分佈式版本呢? – feiyuerenhai