【发布时间】:2018-09-08 04:50:13
【问题描述】:
目前我在front/script/index.js (ipcRenderer) 中读取文件
readTitles('./data').map(({title, dir}) => {
el = document.createElement("li");
text = document.createTextNode(`${title.split('.md')[0]}`);
el.appendChild(text)
readFileContent(dir, el)
document.getElementById('titles').appendChild(el)
})
然后当我需要创建一个文件时,我要求 ipcMain 来做它
form.addEventListener('submit', function(e){
e.preventDefault()
ipcRenderer.send(NEW_DOCUMENT_SAVE_NEEDED, { // alerting ./main.js
fileName: e.target[0].value
})
console.log(e.target[0].value)
})
基本上来回走动
ipcMain.on(NEW_DOCUMENT_SAVE_NEEDED, (event, {fileName}) => {
fs.writeFile(`./${fileName}.md`, "Hey there!", function(err) {
if(err) { return console.log(err); }
console.log("The file was saved!");
});
window.webContents.send(FILE_CREATED, {
message: 'The file was saved!',
payload: {
fileName,
dir: `./data/${fileName}.md`
}
})
})
我可以在那里发送fs.writeFile,而不是发送NEW_DOCUMENT_SAVE_NEEDED,就像我发送fs.readdirSync 来读取所有文件一样。
我知道有些事情我不能在 ipcRenderer 中执行,但我可以执行 fs 操作,是否需要在这些操作上来回切换?
【问题讨论】: