版本說明:
系統:IOS 10
Webpack:4+
Nuxt:2.11.0
現象描述: 開發環境訪問頁面無問題,打包出現錯誤 cannot declare a let variable twice: 't'
產生原因: IOS 10 自身版本bug
嘗試方案: 在nuxt.config.js中配置 uglifyjs-webpack-plugin
插件
...
build:{
plugins: [
...
new uglifyjsWebpackPlugin({
mangle: {
safari10: true
}
})
...
]
...
}
...
結果:提示mangle無該配置項,查閱材料,隨着uglifyjs升級,已經safari10兼容配置設置已經被廢棄
最終解決方案:
在nuxt.config.js中配置 terser-webpack-plugin
插件
...
build:{
...
optimization: {
minimizer: [
new TerserPlugin({
terserOptions: {
mangle: {
safari10: true,
},
}
}),
],
},
...
}
...
結果:成功
相關參考:
Vue項目在IOS10以下打開白屏
iOS10 Safari不識別viewport禁用縮放的暴力解決方案
ios10下出現cannot declare a let variable twice 'n’的錯誤