首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Electron入门教程2 ——进程模型

主进程运行在Node.js环境中,这意味着它有能力要求模块并使用所有Node.js的api。 主进程的主要目的是使用BrowserWindow模块创建和管理应用程序窗口。...因此,在一个浏览器窗口中,所有的用户界面和应用程序功能都应该使用你在web上使用的相同的工具和范例来编写(HTML,CSS,JS)。此外,渲染器不能直接访问require或其他Node.js api。...为了在渲染器中直接包含NPM模块,你必须使用你在web上使用的相同的捆绑工具链(例如,webpack或parcel等)。 ✧ 预加载脚本 预加载脚本包含在web内容开始加载之前在渲染进程中执行的代码。...如下面这个例子: 我们现在preload.js里面编写自己的接口: window.myAPI = { desktop: true } 然后再创建一个叫index.js的脚本,编写代码获取preload.js...相反地,使用contextBridge模块来安全地完成这个任务 : preload.js const { contextBridge } = require('electron') contextBridge.exposeInMainWorld

86250

我的第一个Electron应用

另外可以看到在创建窗口时指定了一个文件preload.js,这个文件是渲染进程和主进程的通信桥梁。...我们可以在预加载脚本中给页面注入一些全局方法,然后在方法中使用进程间通信 (IPC)通知主进程,拿前面的控制器为例: // preload.js const { contextBridge, ipcRenderer...打开本地文件需要使用到dialog模块: // preload.js contextBridge.exposeInMainWorld('electronAPI', { selectOpenFile...渲染进程到主进程通信(双向) 同样是使用ipcRenderer对象,只不过不是使用send和on方法,而是使用invoke和handle方法。...如果直接使用a标签打开页面,Electron默认会新开一个窗口显示,当然这个窗口就不被你控制了,所以会显示丑丑的默认控件,通常打开这种非客户端页面的url都是使用系统默认的浏览器打开,实现上,直接使用

1.1K60

(1 3)Electron知识学习 · 基础篇

Electron是一个跨平台的桌面客户端框架,使用 JavaScript,HTML 和 CSS 构建跨平台的桌面应用程序,文档:https://www.electronjs.org/zh/docs/latest...获取当前版本信息 如果我们需要获取到当前的Electron,NodeJs,Chromium等版本号 这时我们就需要调用相关接口 下面我来演示一下 首先我们我们需要添加一个预加载脚本 我们在根目录添加一个preload.js...文件 并添加如下内容 window和 document全局渲染器 process.versions是Node.js环境 preload.js //对window添加一个监听 window.addEventListener...replaceText(`${dependency}-version`, process.versions[dependency]) } }) 接着改造一下main.js 把preload.js...: 800, height: 600, webPreferences: { //前置加载 preload: path.join(__dirname, 'preload.js

87820

客户端开发(Electron)快速入门

Dear,大家好,我是“前端小鑫同学”,长期从事前端开发,安卓开发,热衷技术,在编程路上越走越远~ Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。...初始化项目: 初始化一个空项目,可以使用mkdir my-electron-app && cd my-electron-app并执行npm init,初始化的后要保证package中的字段...配置环境变量: 在安装electron时大概率你会安装失败,这些问题也大多是由于网络造成的,推荐使用镜像的进行安装,通过以下命令在项目目录进行配置: echo 'registry = https://registry.npmmirror.com...createWindow() }) }) 复制代码 ​ 脚本预加载 说明:脚本会在渲染器进行加载前执行,通过process对象获取chrome,node,electron的版本 脚本内容 // preload.js...BrowserWindow({ width: 800, height: 600, webPreferences: { preload: path.join(__dirname, 'preload.js

1.5K50

AntDesignPro使用electron构建桌面应用

AntDesignPro使用electron构建桌面应用 注意事项声明 所有 node 包必须使用 npm 安装不可使用 cnpm 使用 cnpm 安装的 node 包会导致打包时间无限可能 具体区别查看使用...npm 和 cnpm 安装的包结构 所有包的均可以安装在全局, 避免重复安装 主要分为两个部分 开发环境使用 安装 electron 包 npm install electron --save-dev.../preload.js') } }); // mainWindow.webContents.openDevTools();//打开调试工具 //测试时使用mainWindow.loadURL...if (mainWindow === null) createWindow() }); preload.js 文件内添加, 将 electron 做全局导入 未做此操作无法在其他地方使用 electron...src/utils/request.js 此目录并非标准 不同版本下文件可能有所区别 重点在于给请求配置前缀 当项目打包成应用后使用的是 file:协议 ant pro 的请求无法发出 需要使用完整的请求地址

2.1K40
领券