node-ddk,electron,文件目录选择对话框,dialog

node-ddk,electron,文件目录选择对话框,dialog

https://blog.csdn.net/eli960/article/details/146207062

也可以下载demo直接演示

http://linuxmail.cn/go#node-ddk

渲染进程操作

ts 复制代码
import renderer, { NODEDDK } from "node-ddk/renderer"

选择一个文件(不指定类型)

ts 复制代码
let fs:string = await renderer.dialog.getOneOpenFile({
    title: "选择一个文件", // 窗口标题
})

选择多个文件(指定类型: 文档,压缩包)

ts 复制代码
let fss: string[] = await renderer.dialog.getOpenFileList({
    title: "选择文件", // 窗口标题
    filters: [ // 文件类型
        { "name": "全部", "extensions": ["*"] },
        { "name": "OFFICE", "extensions": ["doc", "docx", "ppt", "pptx"] },
        { "name": "压缩包", "extensions": ["zip", "7z"] },
    ]
})

选择一个文件夹用于读

ts 复制代码
renderer.dialog.getOneOpenDir({})

选择一个文件用于写(123.txt)

ts 复制代码
renderer.dialog.getOneSaveFile({
	filename: "123.txt", // 指定默认文件, 在dialog里可修改
})

选择一个文件夹用于写

ts 复制代码
// 选择文件用于写, 场景一般是: 导出多个文件到一个目录
renderer.dialog.getOneSaveDir({})

选择文件(并记住目录)

ts 复制代码
renderer.dialog.getOneOpenFile({
	dirGroup: "abc", // 按组, 记住上次目录选择, 组ID为abc
}
renderer.dialog.getOneOpenFile({
	dirGroup: "def", // 按组, 记住上次目录选择, 组ID为def
}
相关推荐
To_OC3 小时前
面试被问了三回三栏布局,这次我终于把 BFC 那层窗户纸捅破了
前端·css·面试
To_OC3 小时前
啃完 TS 工具类型我发现:Pick 和 Omit 原来就是一层窗户纸
前端·面试·typescript
风月说与山鬼4 小时前
三、大括号语法
前端·react.js
kyriewen5 小时前
我把最常踩的8个CORS跨域报错整理了一遍——第8个去年还不存在
前端·javascript
Csvn5 小时前
🕰️ 闭包 + setTimeout 的 5 个经典陷阱:为什么定时器看到的永远不是最新的值?
前端
lilian2336 小时前
Harmony os 技术实战|拼豆制图27:用单字符编码承载 50 张 70×70 图纸
前端·数据库·华为·harmonyos
CarIise6 小时前
CSS选择器与样式关联
前端·css·tensorflow
里欧跑得慢7 小时前
CSS 模块化架构的演进:BEM、CSS Modules 到 CSS-in-JS 的反思
前端·css·flutter·web·css-in-js
IT_陈寒8 小时前
Vue的computed属性把我坑惨了,原来我一直用错姿势
前端·人工智能·后端