#javascript #node.js #electron
#javascript #node.js #electron
Вопрос:
Попытка написать простой файл журнала с помощью Electron, отлично работает во время разработки, но завершается неудачей после упаковки приложения
logFilePath = path.join(app.getPath('userData'), 'output/' moment().format('YYYYMMDD') '.log'),
logger = fs.createWriteStream(logFilePath, {flags: 'a '});
и часть package.json для распаковки файлов выглядит следующим образом
"asarUnpack": [
"./output/*"
],
сообщение об ошибке отсутствует: нет такого файла или каталога
Ответ №1:
Почему у вас есть запятая в конце первой строки?
Запуск вашего кода без запятой и объявление переменных:
let logFilePath = path.join(app.getPath('userData'), 'output/' moment().format('YYYYMMDD') '.log')
console.log('logFilePath', logFilePath);
let logger = fs.createWriteStream(logFilePath, {flags: 'a '});
console.log('logger', logger);
logFilePath /Users/xxx/Library/Application Support/file-launcher/output/20210318.log
logger WriteStream {
_writableState: WritableState {
objectMode: false,
highWaterMark: 16384,
finalCalled: false,
needDrain: false,
ending: false,
ended: false,
finished: false,
destroyed: false,
decodeStrings: true,
defaultEncoding: 'utf8',
length: 0,
writing: false,
corked: 0,
sync: true,
bufferProcessing: false,
onwrite: [Function: bound onwrite],
writecb: null,
writelen: 0,
afterWriteTickInfo: null,
bufferedRequest: null,
lastBufferedRequest: null,
pendingcb: 0,
prefinished: false,
errorEmitted: false,
emitClose: false,
autoDestroy: false,
bufferedRequestCount: 0,
corkedRequestsFree: {
next: null,
entry: null,
finish: [Function: bound onCorkedFinish]
}
},
writable: true,
_events: [Object: null prototype] {},
_eventsCount: 0,
_maxListeners: undefined,
path: '/Users/xxx/Library/Application Support/file-launcher/output/20210318.log',
fd: null,
flags: 'a ',
mode: 438,
start: undefined,
autoClose: true,
pos: undefined,
bytesWritten: 0,
closed: false
}