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" })
相关推荐
悟能不能悟1 小时前
js闭包问题
开发语言·前端·javascript
秋秋_瑶瑶1 小时前
vue-amap组件呈现的效果图如何截图
前端·javascript·vue-amap
LFly_ice2 小时前
学习React-9-useSyncExternalStore
javascript·学习·react.js
gnip2 小时前
js上下文
前端·javascript
中草药z2 小时前
【Stream API】高效简化集合处理
java·前端·javascript·stream·parallelstream·并行流
不知名raver(学python版)3 小时前
npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR!
前端·npm·node.js
醉方休3 小时前
React中使用DDD(领域驱动设计)
前端·react.js·前端框架
excel3 小时前
📖 小说网站的预导航实战:link 预加载 + fetch + 前进后退全支持
前端
学习3人组3 小时前
React 样式隔离核心方法和最佳实践
前端·react.js·前端框架