Javascript ShowSaveDialog默认扩展名文件不起作用
我有以下代码用于在Electron上保存文件:Javascript ShowSaveDialog默认扩展名文件不起作用,javascript,node.js,electron,Javascript,Node.js,Electron,我有以下代码用于在Electron上保存文件: const { dialog } = require('electron').remote const fs = require('fs') var filename = dialog.showSaveDialog({ title: 'Save object', filters: [ { name: 'JSON file', extensions: [ 'json' ] } ]
const { dialog } = require('electron').remote
const fs = require('fs')
var filename = dialog.showSaveDialog({
title: 'Save object',
filters: [ { name: 'JSON file', extensions: [ 'json' ] } ]
}).then(result => {
filename = result.filePath
if (filename === undefined) {
}
fs.writeFile(filename, JSON.stringify(this.fileObj.default), (err) => {
if (err) {
throw err
}
})
}).catch(err => {
throw err
})
但即使使用上述代码,它也不会将默认扩展作为json。它仍然是
All Files(*.*)
,因此上面代码中的过滤器部分似乎不起作用。我做错了什么??救命啊 使用最基本的electron应用程序和您所拥有的,下面的代码将默认值设置为json
。你一定有别的东西影响了你的价值
const { dialog, BrowserWindow, app } = require('electron')
app.on('ready', () => {
new BrowserWindow({
width: 800,
height: 600
})
dialog.showSaveDialog({
title: 'Save object',
filters: [{ name: 'JSON file', extensions: ['json'] }]
})
})
使用最基本的electron应用程序和您所拥有的,下面的代码将默认值设置为json
。你一定有别的东西影响了你的价值
const { dialog, BrowserWindow, app } = require('electron')
app.on('ready', () => {
new BrowserWindow({
width: 800,
height: 600
})
dialog.showSaveDialog({
title: 'Save object',
filters: [{ name: 'JSON file', extensions: ['json'] }]
})
})
您的filters对象错误,它是扩展
而不是ext
{name:'some name',扩展:['json']}
使用扩展时的相同行为:(由于我无法在评论中添加图片或代码,请参见我的答案,但我无法使用最基本的代码进行复制。您的filters对象有误,这是extensions
而不是ext
{name:'some name',extensions:['json']}
使用扩展时的相同行为:(由于我无法在评论中添加图片或代码,请参见我的答案,但我无法使用最基本的代码进行复制。您好,我认为您的答案并不能真正回答问题,也许将您的发现发布为评论会更好。@Joshua我想发表评论,但评论中不能包含图片或代码块。您好,我不认为您的答案是正确的。)swer真的回答了这个问题,也许把你的发现作为评论发表会更好。@Joshua我想发表评论,但评论不能有图片或代码块。