首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

即使在使用'backtick‘之后,mainWindow.loadFile(`file://${__dirname}/index.html`)-也不工作

在使用backtick之后,mainWindow.loadFile(file://${__dirname}/index.html)不工作的可能原因是路径拼接的问题。在使用backtick时,${}可以用来插入变量或表达式,但是在拼接路径时需要注意转义字符的使用。

正确的路径拼接方式应该是:

代码语言:javascript
复制
mainWindow.loadFile(`file://\${__dirname}/index.html`);

这样可以确保路径正确拼接,并加载指定的HTML文件。

关于mainWindow.loadFile的详细说明和使用示例,可以参考腾讯云的相关文档:

mainWindow.loadFile - 腾讯云文档

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Electron入门教程3 ——进程通信

, 'preload.js') } }) mainWindow.loadFile('index.html') } app.whenReady().then(() => { ipcMain.handle...应用准备好之后,里面调用ipcMain.handle()来监听渲染进程里的ipcRenderer.invoke('openFileDialog')里定义的openFileDialog。...3. ipcRenderer.invoke的替代 ipcRenderer.invoke()有两种替代方式: (1)ipcRenderer.send() :我们所使用的单向通信可以用来执行双向通信。...这个WebContents实例包含一个sent方法,可以像ipcReender .send那样使用它。为了演示这个通信模式,将构建一个由菜单栏控制的数字计数器。 index.html <!...中,没有直接的方法渲染进程之间使用ipcMain和ipRenderer模块发送消息,而且这种通信方式其实非常少用。

1K40

客户端开发(Electron)URL远程启动

本篇说明: 我们使用一些客户端应用的时候,尤其是用的最多的微信,你微信客户端打开一些页面的时一般都会默认微信的浏览器打开,并且右上角提供了按钮支持在你电脑上装的浏览器里打开。...://", __dirname, "index.html");   shell.openExternal(pagePath); }); 浏览器操作时:客户端打开: 第一步:注册处理协议 关键API:setAsDefaultProtocolClient..., "preload.js"), nativeWindowOpen: true, }, }); mainWindow.loadFile("index.html"); };...== "darwin") app.quit(); }); ipcMain.on("shell:open", () => { const pagePath = path.join("file://"..., __dirname, "index.html"); shell.openExternal(pagePath); }); 复制代码 总结: 本篇涉及到了以下2点: windows中第二个窗口实例处理

1.7K30

自定义协议 | Electron 安全

当你设置partition:'persist:name'时,Electron 会为该窗口创建一个持久化的分区,即使应用重启,这个分区中的数据(如Cookie)会被保留。...如果指定或者使用partition:''(空字符串),则使用一个临时的、匿名的分区,关闭窗口后相关数据会被清除 Session: 会话(Session) Electron 中是一个更高级的概念,它代表了一组配置和行为...例如, http 和 https 是标准协议, 而 file 不是 按标准将一个scheme注册, 将保证相对和绝对资源使用时能够得到正确的解析。..., 'preload.js') } }) mainWindow.loadFile(path.join(__dirname, 'index.html')) } app.on('window-all-closed...== 'darwin') app.quit() }) 运行一次后,就会注册全局协议 nopteam ,之后浏览器里输入 nopteam://index?

13010

webSecurity | Electron 安全

这种利用是不会成功的,因为有同源策略的限制,但是后来我们发现老版本的 Goby 显式地将 webSecurity 设置为了 false ,不然利用的话还会再难一些 我们公众号开启了留言功能,欢迎大家留言讨论~ 这篇文章提供了...本地加载测试同源策略 index.html <!..., 'preload.js') } }) mainWindow.loadFile('index.html') } app.whenReady().then(() => { createWindow...JavaScript 代码 webSecurity: true Electron 5.0、10.0、30.0 版本中均可以成功执行远程 JavaScript 代码 小结 本地加载 index.html...') 创建窗口时,webSecurity 选项并没有用,可以加载 file:// 和 http:// 这种本地或远程的 JavaScript 当通过 loadURL 加载远程页面创建窗口时,webSecurity

20510

shell.openExternal | Electron 安全

其他系统注册的协议 0x04 漏洞案例 0x05 总结 0x06 PDF 版 & Github 往期文章 0x02 效果展示 我们假设让用户输入一个 url ,之后传递给主进程,让主进程使用 shell.openExternal...mainWindow.loadFile('index.html') // Open the DevTools....、路径名等地方进行命令执行的方式,不是很奏效 2....,还很懂 smb 这类服务怎么用,所以即使用户点击了客人并连接以后 会跳出这个窗口,并不会执行,这个步骤就是连接 smb 服务器,此时我们再次回到程序,再次点击按钮 还是仅仅会打开目录,并不会执行,即使会执行...其他系统注册的协议 除了 file:// 和 smb:// 以外,系统注册的其他协议也是可以被利用的,参考文章中的作者还给出了 Windows 上的几个案例 ms-msdt: Microsoft支持诊断工具

22110

nodeIntegrationInSubFrames | Electron 安全

web 技术中包含,大家了解得可能已经比较透彻了 通过 iframe 的内容本身有自己独立的上下文(context),而嵌入它的网页被称为父级浏览上下文,当然这是可以嵌套的,就像物理机里装虚拟机...大家有些时候使用应用程序的时候,点击某个功能会跳出来一个新的窗口,这个就叫做子窗口 举个例子,我们电脑版微信中查看公众号文章时,点击文章,会出现一个新的窗口来显示文章内容,而不是原本的窗口呢,这样原本的窗口可以继续聊天等...mainWindow.loadFile('index.html') // Open the DevTools. // mainWindow.webContents.openDevTools()..., 'preload.js') } }) // and load the index.html of the app. // mainWindow.loadFile('index.html...www.electronjs.org/zh/docs/latest/api/webview-tag https://www.electronjs.org/zh/docs/latest/api/web-contents-view 官方是建议使用

12110

Electron 快速入门,顺便聊聊 IPC 通信

Electron 中,只有 app 模块的 ready 事件被激发后才能创建浏览器窗口。可以通过使用 app.whenReady() API 来监听此事件。...主进程 Node.js 环境中运行,这意味着它具有 require 模块和使用所有 Node.js API 的能力。...(比如有些人会把 ipcRenderer.send 的方法暴露给 web 端,这将允许网站发送任意的 IPC 消息) 我们可以关闭 contextIsolation,不过建议这么做。...你可以使用它提供的一些方法从渲染进程 (web 页面) 发送同步或异步的消息到主进程。可以接收主进程回复的消息。 5.1. 渲染进程给主线程发送消息,主线程回复 5.1.1....以上的通信方式均为异步,不过 Electron 提供了同步的通信方式,但是同步的方式会阻塞代码的执行,最好都使用异步通信。同步用法在这里不多作介绍。

1.3K10

Electron框架 介绍

使用为你平台预构建的 Node.js 安装器来进行安装, 否则,您可能会遇到与不同开发工具兼容的问题。... Electron 中,每个窗口中无论是本地的HTML文件还是远程URL都可以被加载显示。 此教程中,您将采用本地HTML的方式。 您的项目根目录下创建一个名为index.html的文件: <!...如果没有窗口打开则打开一个窗口 (macOS) 当 Linux 和 Windows 应用在没有窗口打开时退出了,macOS 应用通常即使没有打开任何窗口的情况下继续运行,并且没有窗口可用的情况下激活应用时会打开新的窗口...这里使用了两个Node.js概念: __dirname 字符串指向当前正在执行脚本的路径 (本例中,它指向你的项目的根文件夹)。..., 'preload.js') } }) // 加载 index.html mainWindow.loadFile('index.html') // 加载 url /

44600

初识 Electron

('https://github.com') 加载远程 URL 或 mainWindow.loadFile(urlLocation) 加载本地 HTML 文件。...即 npm start 命令,并重新运行该命令才能看到修改后的效果,这对我们日常开发是非常不方便的,在这里建议大家下载 nodemon 来完成这部分工作,它可以监控文件的变化来完成相应的命令,这样就省去手动操作的过程...npm i nodemon -D 安装完毕之后,我们需要修改一下 start 的命令 "start": "nodemon --watch main.js --exec 'electron .'"...,例如点击按钮,需要调用到主进程上的特定 API 时,就需要进程之间进行通讯,Electron 使用 IPC (interprocess communication) 进程之间进行通讯,这跟我们所熟悉的...('index.html') ipcMain.on('message', (event, arg) => { console.log(arg) }) }) [运行结果] 主进程接收到渲染进程传递的信息后

1.6K82

内容劫持 | Electron 安全

之后施行攻击,这将成为一场大型的攻击 因此官方建议: 使用 https 而不是 http;使用 wss 而不是 ws,使用 ftps 而不是 ftp 今天的内容就以 http 和 https 为例 0x02..., 'preload.js') } }) // and load the index.html of the app. // mainWindow.loadFile('index.html...建立 HTTP 服务器 使用 Python3 来进行模拟,页面内容保持和原本的内容一致,之后添加恶意的 标签 wget http://mirror.datamossa.io/ubuntu.../ -O index.html 4....使用 HTTPS 必须使用有效证书,不然和 HTTP 没有太大区别 看起来使用 HTTPS 远程加载资源是完全安全的,但实则不是,这里不光是 loadURL 这种方式远程加载内容的问题,本地加载,如果被加载内容远程加载了

15710

webpack介绍、配置、使用

…… 4、拓展说明 (1) CommonJS、AMD、CMD是用于JavaScript模块管理的三大规范,CommonJS定义的是模块的同步加载,是一个更偏向于服务器端的规范(可以浏览器中使用),...('path'); // 首先要引入node.js中path 模块,用于处理文件与目录的路径 // const 命令声明一个只读的常量,一旦声明,值不可以改变,改变会报错;只声明赋值会报错 //.../less/less1.less'); 7、实现打包url资源(图片、gif、图标等)功能 src 目录中 新建imgs目录,放入两张不同大小的图片 index.html中新增 <div id="bg1...url-loader不依赖于<em>file</em>-loader,<em>即使用</em>url-loader时,只需要安装url-loader即可,不需要安装<em>file</em>-loader,因为url-loader内置了<em>file</em>-loader...<em>file</em>-loader进行处理,参数<em>也</em>会直接传给<em>file</em>-loader。

2.5K10

基于ElectronEgg&Python,从零开始打造一款免费的PDF桌面工具

前言 我们经常在使用一些好用的工具上,体验不是特别友好,很多采用命令行的方式。想有一个 GUI 界面,这样操作更方便,便于其他不懂技术的同事使用。...当然有条件有能力的朋友可以使用纯Python独有的GUI库实现,比如近期文章中介绍的nicegui 开发一个界面很方便,不依赖ElectronEgg框架也是可以的。...使用Python实现功能之后,然后通过 nuitka 将 Python 文件打包成一个可执行文件,通过 ElectronEgg 进行调用。..., 'preload.js') } }) mainWindow.loadFile('index.html') } const openLocalPath...electron-updater,主要的逻辑代码,在打包的配置文件中设置自己的更新服务器,将打包之后的文件放在自己的服务器中。

46210
领券