Open gracekrcx opened 4 years ago
Webpack 的Bundle Split 和Code Split 區別和應用
optimization.splitChunks node_modules 裡的依賴分離到 vendors
webpack.HashedModuleIdsPlugin 再把依賴也分開打包
將不必要加載的模塊延遲加載 Dynamic Imports
webpack 二三事:如何讓 CommonsChunkPlugin() 發揮最大效益 防止重複
Webpack-Dll-Plugin 介紹 減少打包時間
徹底解決Webpack打包性能問題 介紹 webpack.DllPlugin 如何在開發時,對第三方套件,不重複打包,因為開發時動的是業務邏輯,如果每次 save 都需要重新打包第三方套件,不太合裡
speed-measure-webpack-plugin 測量 webpack 構建期間各個階段花費的時間 入口文件的代碼不要超過 200K
How to set multiple file entry and output in project with webpack?
入口文件依賴的 node_modules 內容打包到 common 中,將業務代碼進行單獨打包,這樣可以有效減少 app.js 的體積
分塊、拆包、壓縮等,常見的優化思路主要分為四部分
優化搜索時間,即開始打包時獲取所有的依賴模塊的時間 優化解析時間,即根據配置的 loader 解析相應文件所花費的時間 優化壓縮時間,即 wepack 對代碼進行優化壓縮所花費的時間 優化二次打包時間,即重新打包時所花費的時間
好的,打包完成,打包了整個世界 : webpack增量打包多頁應用
但我們用 git 不就是要清楚我們動了哪些地方嗎?
Webpack 2 實作筆記 (1) — 安裝與設定 webpack 自己架
在 Create React App 使用 npm link 引入 rollup 打包的包含 hooks 寫法的 component,一直出現 ‘Hooks can only be called inside the body of a function component.’ 最後
umijs/father Library toolkit based on rollup, docz, storybook, jest, prettier and eslint.
你的 JS 該減肥了! 很適合用來檢查專案,最近也看了一些 webpack 東西,less-loader 永遠不會忘記你
version
Must match version exactly
^version
~version
如^1.2.2,則安裝範圍是>=1.2.2 且 <2.0.0。即須符合1.*.*
。
如~1.2.2,則安裝範圍是>=1.2.2且<1.3.0。即須符合1.2.*
。
For example, these are all valid:
{
"dependencies": {
"foo": "1.0.0 - 2.9999.9999",
"bar": ">=1.0.2 <2.1.2",
"baz": ">1.0.2 <=2.3.4",
"boo": "2.0.1",
"qux": "<1.0.0 || >=2.3.1 <2.4.5 || >=2.5.2 <3.0.0",
"asd": "http://asdf.com/asdf.tar.gz",
"til": "~1.2",
"elf": "~1.2.3",
"two": "2.x",
"thr": "3.3.x",
"lat": "latest",
"dyl": "file:../dyl"
}
}
What's the difference between tilde(~) and caret(^) in package.json? 圖很漂亮
緣由
這次學習發佈 component library 沒想到對 bundle 又再次的學習 底下紀錄問題
1. 為什麼 npm publish 只有這些檔案上 NPM
package.json 裡的 files 定義輸出哪個資料夾,通常會是 dist
另外,main 則是,指定程式的進入位置
參考文章 npm publish過濾部分文件
2. Introducing Code Splitting
參考文章 Creating a React Component Library using Rollup, Typescript, Sass and Storybook Webpack 帶我飛 Code Splitting
3. peerDependencies
如果你安装了我,那麼你最好也安装 X, Y 和 Z,就是這樣的解釋
參考文章 探討npm依賴管理之peerDependencies
要看看 react 怎麼打包他們的專案嗎 XD react/package.json 可以看出有使用 rollup