当前位置: 首页 > news >正文

资阳网站优化外国网站设计素材

资阳网站优化,外国网站设计素材,做网站优化需要做什么,wordpress按钮无法显示快速创建基于vue的electron项目:quick-start/create-electron - npm 视图线程也就index.html是无法直接访问这个api的(如果没有开启视图层访问nodejs的功能,现在几乎没法直接开启,开启了一堆警告提示) 所以需要通过r…

快速创建基于vue的electron项目:@quick-start/create-electron - npm

视图线程也就index.html是无法直接访问这个api的(如果没有开启视图层访问nodejs的功能,现在几乎没法直接开启,开启了一堆警告提示)

所以需要通过reload.js方式给index.html视图层注入对应的方法,挂在window对象下面

视图层给后端发起消息如果希望通过then的方式获取结果,推荐使用
ipcRenderer.invoke
如果是同步情况可以使用
ipcRenderer.sendSync
个人建议使用ipcRenderer.invoke
如果是仅仅视图层发起消息,不关注后续处理结果,推荐使用
ipcRenderer.send


主线程处理


他们三个发起消息后,主线程处理的方式是不一样的
ipcRenderer.invoke:

//main.jsconst { ipcMain } = require('electron');ipcMain.handle('message-from-renderer', (event, message) => {console.log('主进程收到消息:', message, "event", event);return "我是主进程的返回值:btn2"});


ipcRenderer.sendSync:

//main.js
const { ipcMain } = require('electron');ipcMain.on('render-send-sync-to-main', (event, message) => {console.log(`receive message from render: ${message}`)event.returnValue = '主进程回复的消息';})


ipcRenderer.send

//main.js
const { ipcMain } = require('electron');ipcMain.on('message-from-renderer1', (event, message) => {console.log('主进程收到消息:', message, "event", event);event.reply('reply-from-main', '我是主进程的返回值:btn1');});

preload封装
 

const { contextBridge, ipcRenderer } = require('electron');// 使用 contextBridge 安全地暴露 ipcRenderer 功能
contextBridge.exposeInMainWorld('api', {sendMessage: (id, message) => ipcRenderer.send(id, message),//单向【发送】,视图层发起请求,没有then接受onMessage: (id, callback) => ipcRenderer.on(id, callback),//视图层单向接受数据onMessageOne: (id, callback) => ipcRenderer.once(id, callback),//视图层单向接受数据invoke: (id, message) => ipcRenderer.invoke(id, message),//【双向响应】,视图层发起请求,用then接受成功
});


视图层访问

window.onload = () => {//使用旧的通讯方式document.querySelector('#btn1').onclick = function () {console.log('click', this.id)window.api.sendMessage('message-from-renderer1', 'id:' + this.id);window.api.onMessageOne('reply-from-main', (event, message) => {console.log('btn1响应结果', message);});}//使用新的通讯方式document.querySelector('#btn2').onclick = function () {console.log('click', this.id)window.api.invoke('message-from-renderer', '你好啊,我来来之渲染层').then((result) => {console.log("btn2:响应结果", result)})}
}


更多参考:
1.electron渲染线程与主线程通信,渲染线程与渲染线程通信_electron主线程和渲染线程通信-CSDN博客

2.打包的文档:electron-builder

3.包含打包的模板库,链接和上面一样

http://www.yayakq.cn/news/582088/

相关文章:

  • 平面电商网站建设wordpress 已登录用户登录
  • 顺德人做多上哪个网站做环保是跑还是网站卖
  • 建设网站需要哪些认证企业文化ppt
  • 成都网站建设哪家好美食网页设计免费模板
  • wordpress自定义字段筛选网站优化网站
  • 腾讯云网站建设小程序商店多少钱
  • 网站建设书籍 知乎无锡谷歌推广
  • 上海jsp网站建设wordpress 网校
  • 做代理的项目在哪个网站天津河东做网站哪家好
  • 一个空间放两个php网站网站开发课程报告心得
  • 微网站怎么开发网站鼠标移上去显示层
  • vuepress wordpress西安优化外包
  • 西安给大学做网站公司沧州万网信息技术有限公司
  • win7记事本做网站湖南省建筑信息网
  • 如何做简易个人网站wordpress 全屏图片
  • 手机网站怎么做的好搭建了什么样的平台
  • 昆明做网站哪家北京官方网站网
  • 有谁有做卫生纸巾的网站wordpress文章禁止搜索
  • 怎么做网站旺铺装修怎么看网站开发语言
  • 个人备案能做公司网站吗网站制作现状解决方案
  • 网站建设报价方案对比电子商务网站开发应遵循的基本原则
  • net网站开发视频北京开发网站建设
  • seo网站推广服务自己做个网站的流程
  • 网站开发有什么工作内容网站制作建
  • 怎么用vs做网站开发网站策划与建设阶段的推广
  • 宁波免费建站seo排名wordpress登陆代码
  • 网站中微信公众号链接怎么做室内设计作品集案例赏析
  • wordpress 网址杭州百度优化
  • div做网站排版wordpress会员到期
  • 最好的网站建设系统wejianzhan是什么网站