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" })
相关推荐
liuyouzhang34 分钟前
将基于Archery的web数据库审计查询平台封装为jdbc接口的可行性研究(基于AI)
前端·数据库
码事漫谈6 小时前
大模型输出的“隐性结构塌缩”问题及对策
前端·后端
这儿有一堆花6 小时前
前端三件套真的落后了吗?揭开现代 Web 开发的底层逻辑
前端·javascript·css·html5
.Cnn7 小时前
JavaScript 前端基础笔记(网页交互核心)
前端·javascript·笔记·交互
醉酒的李白、7 小时前
Vue3 组件通信本质:Props 下发,Emits 回传
前端·javascript·vue.js
anOnion7 小时前
构建无障碍组件之Window Splitter Pattern
前端·html·交互设计
NotFound4868 小时前
实战分享Python爬虫,如何实现高效解析 Web of Science 文献数据并导出 CSV
前端·爬虫·python
徐小夕8 小时前
PDF无限制预览!Jit-Viewer V1.5.0开源文档预览神器正式发布
前端·vue.js·github
WangJunXiang68 小时前
Haproxy搭建Web群集
前端
吴声子夜歌8 小时前
Vue.js——自定义指令
前端·vue.js·flutter