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

网站建设 技术团队介绍amp 插件 wordpress

网站建设 技术团队介绍,amp 插件 wordpress,网上推广购物平台怎么推广好,东营市城乡建设局网站开发中遇到Electron自定义窗口的问题 使用VUE3 Electron 开发一个音乐软件,自定义导航栏的放大、缩小和关闭。 其中使用ipcRenderer进行联系Electron,进行放大、缩小和关闭操作。 遇到问题 遇到__dirname is not defined in ES module scope //在V…

开发中遇到Electron自定义窗口的问题

使用VUE3 + Electron 开发一个音乐软件,自定义导航栏的放大、缩小和关闭。

其中使用ipcRenderer进行联系Electron,进行放大、缩小和关闭操作。

遇到问题

遇到__dirname is not defined in ES module scope

//在VUE文件中使用
import  ipcRenderer from 'electron';// 会爆出__dirname is not defined in ES module scope的问题
// 原因是__dirname是commonjs规范的内置变量;esm不会注入这个变量
// 解决:删除package.json中的 type:"moudle"

遇到mainWindow is not Defined 和重置窗口没有变化

// 原因:以下代码放置的位置原因,放在了mainWindow作用域外
// 切换全屏事件
ipcMain.on('toggle-full-screen', function() {if (mainWindow.isMaximized()) {// 之前使用的是 mainWindow.restore();mainWindow.unmaximize();} else {mainWindow.maximize();}
});// 最小化窗口事件
ipcMain.on('minimum', function() {mainWindow.minimize();
});

解决方案

electron.js 设置

electron.js : package.json指定的"main": "electron.js "

const { app,ipcMain , BrowserWindow } = require('electron')
const path = require("path")const createWindow = () => {const mainWindow = new BrowserWindow({width: 1200,height: 700,minWidth: 1200,minHeight: 700,frame: false,transparent: true,resizable: false,webPreferences:{nodeIntegration: true, // 是否允许在页面中使用节点js 通信需要contextIsolation: true, // 不启用上下文隔离 通信需要enableRemoteModule: true, // 允许使用 remote 模块preload:path.join(__dirname, 'preload.js'),}})mainWindow.loadURL("http://localhost:5173/");// 下面两个事件需要在createWindow内,在外面会报mainWindow is not definedipcMain.on('toggle-full-screen', function() {  // 切换全屏事件if (mainWindow.isMaximized()) {mainWindow.unmaximize();} else {mainWindow.maximize();}});ipcMain.on('minimum', function() {  // 最小化窗口事件mainWindow.minimize();});
}app.whenReady().then(() => { // 在应用准备就绪时调用函数createWindow()
})
ipcMain.on('closeProgram', () => { // 关闭程序app.quit();
});

新建 preload.js

const { contextBridge, ipcRenderer } = require('electron')contextBridge.exposeInMainWorld('ipcRenderer', {send: (channel, data) => {let validChannels = ['toggle-full-screen','minimum','closeProgram'] // 配置合法消息名if (validChannels.includes(channel)) {ipcRenderer.send(channel, data)}},receive: (channel, func) => {let validChannels = ['toggle-full-screen','minimum','closeProgram']// 配置合法监听事件名称if (validChannels.includes(channel)) {ipcRenderer.on(channel, (event, ...args) => func(...args))}}
})alert('1')//没弹窗就是失败了 成功后删除

VUE文件中使用

<script>
export default {methods: {minimizeWin(){ // 通知主进程我要进行窗口最小化操作window.ipcRenderer.send('minimum','');// console.log('minimizeWin');},maximizeWin(){  // 通知主进程我要进行窗口最大化操作window.ipcRenderer.send('toggle-full-screen','');// console.log('maximizeWin');},closeWin(){  // 通知主进程我要进行窗口关闭操作//返回一个所有已经打开了窗口的对象数组window.ipcRenderer.send('closeProgram','');// console.log('closeWin');}}
}
</script><template><el-row class="row-head" ><!-- 最小化 --><el-button type="button" class="btn btn-primary" id="minimizeWin" @click="minimizeWin"   style="height: 40px; width: 20%;"></el-button><!-- 最大化 --><el-button type="button" class="btn btn-primary" id="maximizeWin" @click="maximizeWin"  style="height: 40px; width: 20%;"></el-button><!-- 关闭 --><el-button type="button" class="" id="closeWin" @click="closeWin"  style="height: 40px;width: 20%;"></el-button></el-row>
</template>

参考

vite+vue3+electron踩坑记录ipcRenderer通信,vue-router打包白屏问题

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

相关文章:

  • 做网站发违规内容 网警抓不抓wordpress 页面位置
  • 重庆网站建设沛宣三星网上商城下载
  • 单页网站规划设计书杭州做美妆的网站
  • 广东微信网站制作公司wordpress固定连接怎么设置最好
  • 域名有了怎么建设网站牟平网站制作公司
  • 做网站的论文摘要高端的网名
  • qifeiye做的网站如何网站建设的图片怎么加水印
  • 如果做公司网站图片制作微信表情包
  • 网站建设维护学什么科目网页素材提取
  • 石家庄做网站排名公司php+缺少+wordpress
  • 微网站首页2021年军事新闻
  • 专业的手机网站开发品牌策划岗位职责
  • 网站建设数据库装饰设计公司排名
  • 网站建设服务流程国内优秀设计网站
  • 2008如何添加iis做网站百度一下官网手机版
  • 网站建设 英汇网络网站开发费用如何入账
  • 生鲜电商网站建设合肥关键词排名优化
  • 人力招聘网站建设做一个购物网站
  • 网站开发系统有哪些开发方案上海高端网站搭建
  • 网站定制功能国际网站开发
  • 网站建设与管理论文群晖直接编辑wordpress
  • 廊坊网站定制开发怎么做网站图片
  • 青岛哪家做网站好html标签 wordpress
  • 昆明高端网站设计网络优化工程师是干嘛的
  • 渭南网站建设深圳网站建设资讯
  • 手机公司网站建设郑州网站建设优化企业
  • 联通公司网站谁做的苏州网络推广优化
  • 附近广告公司位置重庆seo综合优化
  • 网站漏洞扫描工具烟台网站建设咨询
  • 做图模板网站有哪些内容南宁房地产最新消息