当前位置: 首页 > 知识库问答 >
问题:

如何获取路径的选定目录到渲染器进程

葛胡媚
2023-03-14

我想存储在变量的路径的本地目录选择使用dialog.showOpenDialog.我尝试了每一个教程和堆栈答案,没有任何运气。最好的部分是,即使电子api演示解决方案不工作(我在这里使用一个)所以,对话框打开,我可以选择一个文件夹或文件-但没有什么是发送回渲染器进程

在这里,我正在测试这个打开文件,但也没有结果。我正在使用jQuery btw和elcetron v 12。这是我的代码:

渲染过程:

$('.js_select_folder').on('click', (e) =>{
    ipcRenderer.send('open-folder')
    e.preventDefault();
})
    
ipcRenderer.on('selected-folder', (event, path) => {
    console.log('wtf',path)
    $('#info').text('Result :'+path)   
})

主要流程:

ipcMain.on('open-folder',  (event) => {
    dialog.showOpenDialog({ properties:['openFile']}, (files) => {
        if(files){
            console.log(files)
            event.reply('selected-folder', files)
        }
    })
})

任何地方都没有console.log(文件)的跟踪。你知道我做错了什么吗?

共有1个答案

段干麒
2023-03-14

我想通了:

渲染器进程:

$('.js_test').on('click', (e)=>{
    e.preventDefault();
    ipcRenderer.send('open-folder')
})

ipcRenderer.on('sel-dir', (event, path) => {
  const message = `This app is located at: ${path}`
    $('#info').text(message)   
})

主要流程

ipcMain.on('open-folder', (event, arg) => {
  dialog.showOpenDialog({properties: ['openDirectory']}).then(result=>{
    event.sender.send('sel-dir', result.filePaths)
  })
})

所以它实际上非常简单,你可以看到,但我花了两天时间才弄明白。结果是,我得到的路径(或任何数据)回到渲染器后,选择dir或文件。

你好,麦克。

 类似资料:
  • electron 的渲染进程如何获取到process.cwd()的值 或者 process.resourcesPath也行 在preload.js中可以拿到process对象,但是没有cwd函数和resourcesPath的值。 之前版本的remote.getGlobal在27版本中也被移除,否则可以在main.js里面进行设置 还有一种办法是在preload.js中定义 ipcRender的通信

  • 本文向大家介绍Python如何获取文件路径/目录,包括了Python如何获取文件路径/目录的使用技巧和注意事项,需要的朋友参考一下 一、获取文件路径实现 1.1 获取当前文件路径 __file__变量其实有个问题,当文件被是被调用文件时__file__总是文件的绝对路径;但当文件是直接被执行的文件时,__file__并不总是文件的绝对路径,而是你执行该文件时给python传的路径。比如你是pyth

  • 我知道我可以从src/test/resources加载一个文件: 但是如何获得src/test/resources目录的完整路径,即我不想加载一个文件,我只想知道目录的路径?

  • 问题内容: 仅选择目录,如何使用JFileChooser获取目录的绝对路径? 问题答案: 用: 和…一起: 然后调用返回的对象。

  • 问题内容: 我有以下目录布局: src main Java resources SQL (database script) Spring (configuration) network application 在ServletContextListener类中,我想访问SQL目录下的文件并列出它们。基本上我的问题是路径,因为我知道简而言之列出目录下的文件是: 也许我可以使用Object尝试建立路径

  • 我有以下目录布局: src 主 Java 资源 SQL(数据库脚本) Spring(配置) 是否存在以相对的、非硬编码的方式设置该路径的方法?类似于(如果可能,最好是spring)或如何使用servletContext来指向?