我已经创建了一个使用电子和imagemin的基本图像压缩应用程序,在使用npm start
命令运行时,该应用程序运行良好。
之后,我使用电子打包程序打包了该应用程序并运行exe文件,并尝试再次压缩图像。
这一次我遇到了错误
Error: Error in file: path_to_image.jpg
write EPIPE
at afterWriteDispatched (internal/stream_base_commons.js:145)
at writeGeneric (internal/stream_base_commons.js:136)
at Socket._writeGeneric (net.js:703)
at Socket._write (net.js:715)
at doWrite (_stream_writable.js:415)
at writeOrBuffer (_stream_writable.js:399)
at Socket.Writable.write (_stream_writable.js:299)
at Socket.Writable.end (_stream_writable.js:584)
at Socket.end (net.js:531)
at handleInput (C:\Users\xyz\Desktop\slice\release-builds\slice-win32-ia32\resources\app.asar\node_modules\execa\index.js:87)`
这是下面的代码
const path = require('path')
const imagemin = require('imagemin');
const imageminMozjpeg = require('imagemin-mozjpeg');
const files = await imagemin(["path_to_image.jpg"], path.dirname(r) + '/optimized', {
plugins: [
imageminMozjpeg({
quality: document.getElementById('jq').value
})
]
}).then(file => {
console.log(file);
})
.catch(Error => console.log(Error));
打包应用程序时我是否缺少任何东西?
答案 0 :(得分:0)
我遇到了同样的问题,我通过将false传递给asar(我使用电子制造器)来解决此问题
"build": {
"asar": false
},
通过将--no-asar
传递给打包脚本,您可以使用电子打包器实现相同的目的