https://www.electronjs.org/docs/api/dialog
对话框
显示用于打开和保存文件、警报等的本机系统对话框。
在Electron的主线程上打开
const { dialog } = require('electron')
console.log(dialog.showOpenDialog({ properties: ['openFile', 'multiSelections'] }))
这个对话框是从Electron的主线程上打开的。如果要使用渲染器进程中的对话框对象, 可以使用remote来获得:
const { dialog } = require('electron').remote
console.log(dialog)
练习:打开和保存文件
let {dialog} = require('electron').remote
//打开文件
document.getElementById('openFile').onclick = function(){
dialog.showOpenDialog({
title:'请选择文件',
buttonLabel:'确定',
filters:[{
name:'code',extensions:['js','html']
}]
}).then(result => {
console.log(result)
}).catch(err => {
console.log(err)
})
}
//保存文件
document.getElementById('saveFile').onclick = function(){
dialog.showSaveDialog({
title:'请选择要保存的文件名',
buttonLabel:'保存',
filters:[{
name:'code',extensions:['js','html']
}]
}).then(result => {
console.log(result)
fs.writeFileSync(result.filePath,'保存文件测试')
}).catch(err => {
console.log(err)
})
}
练习:信息提示
document.getElementById('showMessage').onclick = function(){
dialog.showMessageBox({
type:'warning',
title:'您确定吗?',
message:'您真的想要删除这条数据吗?',
buttons:['cancel','ok']
}).then((result)=>{
console.log(result)
})
}