Angular 应用里的 vendor.js 是用来干什么的?
What is vendor file in angular?
以 SAP 電商云 UI 的 Angular 頁面為例,這個 vendor.js 有超過 17 萬行代碼:
此文件包含導入您的應用程序 (app.module) 的所有庫,包括 Angular 庫。 導入到您的應用程序中的第三方庫也會被編譯到此文件中(例如 lodash、moment 等)。
這個文件在開發編譯(ng build)之后很大,因為它包含在瀏覽器中編譯 Angular 所需的一切。 在將您的應用程序發布到生產環境之前,始終運行 prod 構建 (ng build –prod)。 prod 構建運行 Ahead of Time (AoT) 編譯并執行 tree-shaking。
main.js
包含應用程序的 action 相關代碼,比如 Effect 實現。
同樣的 effect 實現,在 vendor.js 里找不到。
在瀏覽器下載并運行代碼之前的構建階段,Angular 提前 (AOT) 編譯器將您的 Angular HTML 和 TypeScript 代碼轉換為高效的 JavaScript 代碼。在構建過程中編譯您的應用程序可在瀏覽器中提供更快的渲染。
除了上面的內容,vendor bundle JS 還包含什么?制作“供應商捆綁包”。供應商包包含每個應用程序功能所依賴的所有框架和庫。通過將所有這些代碼構建到單個包中,客戶端可以有效地緩存包,并且您只需要在框架或庫更新時重新構建包。因此,vendor.js 里不包含自開發代碼。
什么是 angular bundle?
捆綁是將多個文件合并為一個文件的過程。在我們的例子中,Angular 等第三方庫和其他依賴項將被捆綁到 vendor.bundle.js 中。
更多Jerry的原創文章,盡在:“汪子熙”:
總結
以上是生活随笔為你收集整理的Angular 应用里的 vendor.js 是用来干什么的?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何打印超长图片
- 下一篇: java中使用sublist方法获取li