Mrcdh技术博客 Mrcdh技术博客
首页
  • Html5
  • Javascript
  • Nodejs
  • electron
  • Android
  • 微信公众号
  • 框架
  • 其他
  • Mysql
  • PHP
  • Python
  • java
  • Gulp
  • 其它
  • 网站
  • 资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Mrcdh

全栈开发小学生
首页
  • Html5
  • Javascript
  • Nodejs
  • electron
  • Android
  • 微信公众号
  • 框架
  • 其他
  • Mysql
  • PHP
  • Python
  • java
  • Gulp
  • 其它
  • 网站
  • 资源
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Html5

  • JavaScript

  • Nodejs

  • express

  • electron

    • electron窗体操作
    • electron应用更新
    • 02.electron打包操作(electron-builder)
    • electron调用打印机打印
    • electron和页面通信
      • 页面(渲染进程)->electron(主进程)
      • 主进程 -> 渲染进程
    • electron文件缓存
    • electron常见问题
  • Android

  • 微信公众号

  • 框架

  • 其他

  • selenium

  • Sequelize

  • 大前端
  • electron
mrcdh
2022-12-07
目录

electron和页面通信

# 页面(渲染进程)->electron(主进程)

页面

const { ipcRenderer } = require('electron')
ipcRenderer.send('loginSuccess', {username: 'admin'})
1
2

主进程

const {app, BrowserWindow, ipcMain} = require('electron')

app.whenReady().then(() => {
    createWindow()
})

function createWindow(){
const win = new BrowserWindow({
        width: 390,
        height: 380,
        webPreferences:{
            nodeIntegration: true,
            contextIsolation: false,
        }
    })
}
ipcMain.on('loginSuccess', (event, data) => {
    console.log(data) // {username: 'admin'}
})
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

# 主进程 -> 渲染进程

主进程

ipcMain.on('loginSuccess', (event, data) => {
    // 被动发送,通过监听获得发送者,指定发送
    event.sender.send('eventName', {username: 'user'})
})
// 主动发送
win.webContents.send('eventName', {username: 'user'})
1
2
3
4
5
6

页面

ipcRenderer.on('eventName', (event, data) => {})
1
#electron
上次更新: 2023/09/22, 16:54:32
electron调用打印机打印
electron文件缓存

← electron调用打印机打印 electron文件缓存→

最近更新
01
uniapp常见问题
03-19
02
Vue3项目搭建
12-25
03
使用pnpm的monorepo组织项目
11-01
更多文章>
Theme by Vdoing | Copyright © 2020-2025 Mrcdh | 苏ICP备2020058908号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×