电子对话框不保存文件
Electron Dialog not saving the file
电子版:1.3.3
操作系统:Ubuntu 14.04
我想用 Electron 将 XML 对象保存到 .xml 文件中。我试试这个:
const {dialog} = require("electron").remote;
dialog.showSaveDialog(myObj)
正在打开一个新的windows,我填写了文件名但没有保存任何内容。
showSaveDialog()
API 不会为您保存文件。您必须使用返回的路径并使用 Node 来保存您的文件。
const {dialog} = require('electron').remote;
const fs = require('fs');
dialog.showSaveDialog({}).then((result) => {
fs.writeFile(result.filePath, MyFileData, (err) => {
// file saved or err
});
}).catch((err) => {
// err
});
建议使用dialog.showSaveDialog的返回路径在新版本的electron中获取filepath
:(在下面的代码中是result.filePath
)
filename = dialog.showSaveDialog({}
).then(result => {
filename = result.filePath;
if (filename === undefined) {
alert('the user clicked the btn but didn\'t created a file');
return;
}
fs.writeFile(filename, content, (err) => {
if (err) {
alert('an error ocurred with file creation ' + err.message);
return
}
alert('WE CREATED YOUR FILE SUCCESFULLY');
})
alert('we End');
}).catch(err => {
alert(err)
})
电子版:1.3.3 操作系统:Ubuntu 14.04
我想用 Electron 将 XML 对象保存到 .xml 文件中。我试试这个:
const {dialog} = require("electron").remote;
dialog.showSaveDialog(myObj)
正在打开一个新的windows,我填写了文件名但没有保存任何内容。
showSaveDialog()
API 不会为您保存文件。您必须使用返回的路径并使用 Node 来保存您的文件。
const {dialog} = require('electron').remote;
const fs = require('fs');
dialog.showSaveDialog({}).then((result) => {
fs.writeFile(result.filePath, MyFileData, (err) => {
// file saved or err
});
}).catch((err) => {
// err
});
建议使用dialog.showSaveDialog的返回路径在新版本的electron中获取filepath
:(在下面的代码中是result.filePath
)
filename = dialog.showSaveDialog({}
).then(result => {
filename = result.filePath;
if (filename === undefined) {
alert('the user clicked the btn but didn\'t created a file');
return;
}
fs.writeFile(filename, content, (err) => {
if (err) {
alert('an error ocurred with file creation ' + err.message);
return
}
alert('WE CREATED YOUR FILE SUCCESFULLY');
})
alert('we End');
}).catch(err => {
alert(err)
})