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

长沙做网站微联讯点不错九创wordpress

长沙做网站微联讯点不错,九创wordpress,深圳坪山住房和建设局网站,网站开发中网页上传和发布前言#xff1a;electron是一个跨平台桌面端应用开发工具。它将整个系统内容分为主进程和渲染进程两个部分(你可以粗略的理解为electron项目开启了两个服务器#xff0c;一个渲染页面另一个处理electron窗口内容)。这两个服务器之间通过JS Bridge进行通信(即electron是一个跨平台桌面端应用开发工具。它将整个系统内容分为主进程和渲染进程两个部分(你可以粗略的理解为electron项目开启了两个服务器一个渲染页面另一个处理electron窗口内容)。这两个服务器之间通过JS Bridge进行通信(即contextBridge),在主进程的preload预加载中可以同时访问到浏览器进程的window对象和主进程的electron api。此时我们可以经由ipcRerender(electron中从渲染进程网页向主进程发送同步和异步消息的api)将electron的api挂载到window对象上以便在浏览器进程中使用)然后在主进程中通过ipcMain(处理从渲染器进程网页发送的异步和同步消息。从渲染器发送的消息将被发送到该模块。)监听即可达到进程通信的目的。 本文章主要介绍如何基于vite搭建electron项目 首先创建文件夹并cd到此文件夹中初始化 npm init -y 然后安装vite环境 npm i vite -D 安装electron(推荐cnpm安装npm安装有可能会卡住或者你自己更换镜像地址也行) cnpm install --save-dev electron 安装electron打包工具 cnpm install electron-builder -D 接下来安装你想用的框架及配套内容(本文使用的是vue3) npm i vue vue-router pinia axios less less-loader -s 安装vue的构建工具 npm i vitejs/plugin-vue -D 现在我们开始配置文件内容 因为是基于vite搭建的项目故此需要再根目录新建vite.config.mjs(为啥用mjs稍后会解释)文件 import { defineConfig } from vite import vue from vitejs/plugin-vue import electron from vite-plugin-electron import renderer from vite-plugin-electron-renderer import { resolve } from pathexport default defineConfig({//项目路径配置base:./,plugins:[//vue解析插件vue(),electron({//electron项目入口entry:./electron/index.js,vite:{build:{//打包目录名outDir:dist}}}),//渲染进程入口 renderer({entry:./src/main.js,nodeIntegration: true,})],//允许跨域server:{cors:true},resolve:{alias:{:resolve(__dirname,./src)}} }) package.json文件配置 {name: electron,version: 1.0.0,//type:module,/* electron项目不推荐type:module故此我们这里就不使用type:module选项启动项目时控制台会提醒The CJS build of Vites Node API is deprecatedvite已弃用cjs进行构建我们可以修改vite.config.js为vite.config.mjs*///入口文件main: electron/index.js,scripts: {//启动项目 dev: vite,//打包成windows应用/* --config electron-builder.json 指根据electron-builder.json配置文件打包所以需要在根 目录下新建electron-builder.json文件配置打包信息*/build: vite build electron-builder build --win --x64 --config electron- builder.json,//打包成mac应用(注打包mac应用需要再mac系统中才能打包)build:mac:vite build electron-builder build --mac --arm64 --config electron- builder.json,//打包成linux应用build:linux:vite build electron-builder build --linux --armv7l --config electron-builder.json},keywords: [electron,vue,pinia],description:vite-electron,author: 仙古梦回,license: ISC,devDependencies: {vitejs/plugin-vue: ^5.1.0,electron: ^31.2.1,electron-builder: ^24.13.3,less: ^4.2.0,less-loader: ^12.2.0,vite: ^5.3.4,vite-plugin-electron: ^0.28.7,vite-plugin-electron-renderer: ^0.14.5},dependencies: {vitejs/plugin-vue: ^5.1.0,pinia: ^2.1.7,vue: ^3.4.33,vue-router: ^4.4.0} }electron-builder.json文件配置 {productName: 仙古梦回,files: [./electron/index.js, ./dist],extraFiles: [./videos, ./cvideo], directories: {output: ./dist}} 现在我们开始构建主进程文件在根目录新建electron文件夹并新建index.js const { app,BrowserWindow,ipcMain } require(electron) const path require(path)const createWindow (){const win new BrowserWindow({width:1100,height:700,webPreferences:{nodeIntegration:true, // 禁用 nodeIntegrationcontextIsolation: true, // 启用上下文隔离 preload:path.join(__dirname,./preload.js)}})//关闭菜单win.setMenu(null)/*环境变量process.env.VITE_DEV_SERVER_URL用于获取当前项目的启动地址。 示例http://localhost:5173*/if(process.env.VITE_DEV_SERVER_URL){win.loadURL(process.env.VITE_DEV_SERVER_URL)}else{win.loadFile(path.join(__dirname,../dist/index.html))} }//监听渲染进程传过来的great事件 ipcMain.on(great,(event,val){console.log(val) })app.whenReady().then(() {createWindow()app.on(activate, () {if (BrowserWindow.getAllWindows().length 0) createWindow()})})app.on(window-all-closed, () {if (process.platform ! darwin) app.quit() }) 预加载文件配置 const { contextBridge,ipcRenderer } require(electron)//用于安全地将 API 从预加载脚本的隔离上下文公开到网站运行的上下文。该 API 也可以像以前一样从 window.myAPI 上的网站访问。 contextBridge.exposeInMainWorld(electronAPI, {//暴露到渲染进程window对象中的great事件通过ipcRenderer.send发送给主进程great: (val) ipcRenderer.send(great, val) }) 构建渲染进程 在根目录建立src文件夹同时在根目录创建index.html作为展示页面(上文建立主进程index.js文件时有引入这个html文件) !DOCTYPE html html langen headmeta charsetUTF-8meta nameviewport contentwidthdevice-width, initial-scale1.0title仙古梦回/title!--注意这里的typemodule我们使用vue开发用的是ESmodule同时允许跨域crossorigin --script typemodule crossorigin src./src/main.js /script /head bodydiv idapp/div /body /html 在src文件夹下开始构建vue项目(与普通vue项目构建一样) main.js文件 import { createApp } from vue;import App from ./App.vueconst app createApp(App)app.mount(#app) App.vue文件配置 templatedivbutton clicksend向主进程发送你好/button/div /templatescript setupconst send (){window.electronAPI.great(你好123 ) }/scriptstyle langless scoped/style 至此一个基于vite和vue搭建的electron项目就构建完成。 项目代码地址仙古梦回/electron的搭建
http://www.w-s-a.com/news/741114/

相关文章:

  • dw做网站怎么换图片编写网页所用的语言是
  • 外贸网站收录工具个人网站的备案
  • 正规的网站建设工作室海外高延迟服务器做网站
  • 网站设计确认函合肥做网站维护的公司
  • 小说网站推荐网站开发语言怎么查
  • 网页制作基础教程慕课版电子版那种登录才能查看的网站怎么做优化
  • 制作网站用的域名网站域名注册信息查询
  • 公司域名查询官方网站女教师遭网课入侵直播录屏曝
  • 网站开发社交网络功能的作用腾讯公司网站
  • 网站建设需要微信账号和密码网站建设工作汇报
  • 国家城乡住房和建设部网站西安私人网站
  • 天津高端网站定制seo实战教程
  • 网站文章怎么做才能被快速收录网站备案核验系统
  • 子网站建设方案l建设银行网站
  • 免费看舆情网站网站备案用户名忘了怎么办
  • 地方门户网站的分类网站的方案
  • 沧州哪里做网站网站的建设是什么
  • 设计公司海报秦皇岛seo网站推广
  • 网站导航规划wordpress做漫画
  • jsp体育用品网站建设wordpress 10万篇文章
  • 沈阳做微信和网站的公司网站在线支付接口
  • 重庆整合网络营销百度seo快速提升排名
  • 设计师网站外网百度分析工具
  • 旅游网站建设技术解决方案wordpress主题安装后找不到
  • 网站图片文字排版错误管理系统界面设计
  • 网站建设 台州广州惠科互联网技术有限公司
  • 网站页面尺寸大小四川鸿业建设集团网站
  • 做女朋友的网站局网站建设方案word
  • 做阿里国际网站会有成效吗科技网站有哪些
  • 高端公司网站建设北京两学一做网站