今天小程序打包上傳的時候出現了原包太大,超過了2MB
物理解決辦法:
最開始的解決辦法,把圖片全都壓縮了一邊,確實減少了100多KB,但是沒有解決上傳問題,就算解決了也只是一時的解決在網上查找其他解決辦法
晚上說了一個引入圖片的時候,如果你用src引入的話可能多多少少會導致打包大小有點大,原理還沒咋弄明白,解決辦法是用require來進行引入
require("../../static/imgs/jia.png")
還有就是把代碼壓縮
根源解決問題:
在往上找了一下,網上說用分包能夠完美解決這個問題,完咯我就是查找分包的使用
目錄結構
只是在原來的目錄下面添加了一個packageA文件夾
在app.json中添加,pages內還是和原來使用的方法是一樣的
"subpackages": [ { "root": "packageA", "pages": [ ] } ],
這樣在打包的工程中會自動打包多個
但是我發現這樣搞,有點解決不了我當前的問題,因為導進去一個文件才幾KB大小,就算把所有的文件都弄進去,也不一定能夠解決這個問題,就算這次解決了,你再次寫東西的時候,你同樣還會有這樣的問題
后來在去找別的原因,發現打包過程中,es6轉es5失敗導致的vendor.js過大,才會出現了這個問題
最后在網上找到了下面的解決辦法,也完美解決了
開發環境下,引入一定量包后,會出現打包失敗的問題(因為vendor.js過大)
查看了webpack后發現,因為是開發環境,所以沒進行UglifyJs壓縮,所以解決的方法來了,引入UglifyJs插件
修改build目錄下 的webpack.dev.conf.js配置文件,前面添加插件的引入,
var UglifyJsPlugin = require('uglifyjs-webpack-plugin')
在插件列表最后加上一句話,即可完美解決
new UglifyJsPlugin({ sourceMap: true })