Ich erhalte ständig diesen Fehler:
TypeError: Cannot read properties of undefined (reading 'showOpenDialog')
Wie rufe ich showOpenDialog()
mit minimalen Änderungen an?
Ich verwende das neue Quasar/Electron mit Webpack 5.
Dies ist die openFile()-Methode in meiner Vue-Datei:
openFile () { window.electronApi.dialog.showOpenDialog({ title: 'Load File', properties: ['openFile'] }).then(result => { const filename = result.filePaths[0] if (filename) { const extension = getExtensionName(filename) console.log(extension) } else { console.log('No file selected') } }).catch(err => { console.log(FILE + 'Error: ' + err) }) },
Dies ist, was in electro-preload.js deklariert ist:
import { contextBridge} from 'electron' contextBridge.exposeInMainWorld('electronApi', { dialog: require('electron').dialog, showOpenDialog: require('electron').showOpenDialog })
感谢@creative learner的想法!这有效!