node-ddk,electron 开发组件

node-ddk-demo

说明

node-ddk 是 ELECTRON 开发框架, 封装常见操作

ts 复制代码
npm i node-ddk

演示:
https://live.csdn.net/v/468440

本项目是一个DEMO,

项目地址: https://gitee.com/linuxmail/node-ddk-demo

ts 复制代码
git clone https://gitee.com/linuxmail/node-ddk-demo
cd node-ddk-demo
npm i
npm run dev
// npm run build

目录结构

ts 复制代码
// 代码路径
src/
// 主进程
src/main
// 预加载
src/main/preload.ts
// 主进程入口
src/main/main.ts
// 渲染进程
src/renderer
// 渲染进程入口
src/renderer/app.ts

API 接口, 用法

见项目源码, 里面有用法和说明

主进程, 几个小例子

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

// 设置图标
main.app.setFavicon(main.app.getPathInPublic("icons/favicon.png"))

// 托盘右键菜单
main.tray.setContextMenu([
  {
    label: "显示主窗口",
    click: async () => { }
  },
  {
    label: "退出",
    click: async () => { }
  },
])

// 注册一个自定义的服务
main.ipc.registerListenModule("do-sth", async (req) => {
  console.log("do-sth req:", req)
  return {
    data: { ccc: "nihao", yourReqData: req.data, versions: process.versions },
  }
})

渲染进程, 几个用法

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

// 窗口最大化
await renderer.window.maximize()

// 内容缩放, 扩大到 120%
await renderer.window.setZoomFactor(1.2)

// 托盘闪动 10s, 托盘提示为 test
renderer.tray.startFlashing({ period: 10 * 1000, tooltip: "test" })

// 用操作系统默认程序, 打开文件
await renderer.shell.openLocalFile({ path: "/etc/resolv.conf" })
相关推荐
晓得迷路了4 分钟前
栗子前端技术周刊第 116 期 - 2025 JS 状态调查结果、Babel 7.29.0、Vue Router 5...
前端·javascript·vue.js
How_doyou_do6 分钟前
执行上下文、作用域、闭包 patch
javascript
叫我一声阿雷吧12 分钟前
深入理解JavaScript作用域和闭包,解决变量访问问题
开发语言·javascript·ecmascript
顾北1219 分钟前
AI对话应用接口开发全解析:同步接口+SSE流式+智能体+前端对接
前端·人工智能
-嘟囔着拯救世界-24 分钟前
【2026 最新版】OpenAI 祭出王炸 GPT-5.3-Codex!Win11 + VSCode 部署保姆级教程
vscode·gpt·chatgpt·node.js·node·codex·gpt5
iDao技术魔方32 分钟前
深入Vue 3响应式系统:为什么嵌套对象修改后界面不更新?
javascript·vue.js·ecmascript
历程里程碑36 分钟前
普通数组-----除了自身以外数组的乘积
大数据·javascript·python·算法·elasticsearch·搜索引擎·flask
摸鱼的春哥37 分钟前
春哥的Agent通关秘籍07:5分钟实现文件归类助手【实战】
前端·javascript·后端
念念不忘 必有回响40 分钟前
viepress:vue组件展示和源码功能
前端·javascript·vue.js
Amumu1213844 分钟前
Vue3 Composition API(一)
开发语言·javascript·ecmascript