web前端页面生成exe可执行文件实例

在 html5的崛起、javascript要一统天下之际,有一个名为【跨平台】的技术越来越火。为什么会这么火?因为软件开发者只需一次编写程序,即可在 windows、linux、mac、ios、android 等平台运行,大大降低了程序员的工作量,也使公司的产品可以快读迭代。曾经跨平台技术的不被看好,如今随着手机、电脑硬件的发展而快速发展。这一切,几乎由html5技术推动,当然,javascript 这个语言,是最大的功臣。本文主要给大家介绍electron 怎么将网页打包成桌面应用(web前端页面怎么生成exe可执行文件),希望能帮助到大家。

基于 HTML5 的跨平台技术比较出名的有 PhoneGap、Cordova,常常用于开发 webapp;还有 Egret、Cocos-creator、Unity 等,常用于开发游戏;还有基于 Node.js 的 nw.js,用于开发桌面应用,以及 Electron,一款比 nw.js 还强大的用网页技术来开发桌面应用的神器。

其实,以上都是废话,现在进入主题:怎么用 Electron 将网页打包成 exe 可执行文件!

假设:

1、你已经安装并配置好了 node.js (全局安装)
2、你已经用 npm 安装了 electron (全局安装)
3、你已经写好了前端网页(html、css、javascript 这些,或者基于这些的前端框架写好的网页)
4、以上三点看不懂的,赶紧去百度。。。

立即学习“前端免费学习笔记(深入)”;

你如果具备了以上的假设,请继续往下看:

1、找到你的前端网页项目文件夹,新建 package.json、main.js、index.html 三个文件(注:其中的 index.html 是你的网页首页)

你的项目目录/

├── package.json├── main.js└── index.html

登录后复制

2、在 package.json 中添加如下内容

{ "name" : "app-name", "version" : "0.1.0", "main" : "main.js"}

登录后复制

3、在 main.js 中添加下面的内容,这个 main.js 文件就是上面 package.json 中的 “main”键 的值,所以可根据需要修改

const {app, BrowserWindow} = require('electron')const path = require('path')const url = require('url')// Keep a global reference of the window object, if you don't, the window will// be closed automatically when the JavaScript object is garbage collected.let winfunction createWindow () { // Create the browser window. win = new BrowserWindow({width: 800, height: 600}) // and load the index.html of the app. win.loadURL(url.format({ pathname: path.join(__dirname, 'index.html'), protocol: 'file:', slashes: true })) // Open the DevTools. // win.webContents.openDevTools() // Emitted when the window is closed. win.on('closed', () => { // Dereference the window object, usually you would store windows // in an array if your app supports multi windows, this is the time // when you should delete the corresponding element. win = null })}// This method will be called when Electron has finished// initialization and is ready to create browser windows.// Some APIs can only be used after this event occurs.app.on('ready', createWindow)// Quit when all windows are closed.app.on('window-all-closed', () => { // On macOS it is common for applications and their menu bar // to stay active until the user quits explicitly with Cmd + Q if (process.platform !== 'darwin') { app.quit() }})app.on('activate', () => { // On macOS it's common to re-create a window in the app when the // dock icon is clicked and there are no other windows open. if (win === null) { createWindow() }})// In this file you can include the rest of your app's specific main process// code. You can also put them in separate files and require them here.

登录后复制

4、如果你的网页首页的文件名不是 “index.html”,那么请在 main.js 中将其中的 ‘index.html’ 修改为你的网页首页名

5、打开 DOS,cd 到你的项目目录(或直接在你的项目目录下空白的地方 shift+鼠标右键,然后点击在此处打开命令窗口,这里看不懂的,唉,百度吧少年)

6、在上一步的 DOS 下,输入 npm install electron-packager -g全局安装我们的打包神器

npm install electron-packager -g

登录后复制

7、安装好打包神器后,还是在上一步的 DOS 下,输入 electron-packager . app –win –out presenterTool –arch=x64 –version 1.4.14 –overwrite –ignore=node_modules 即可开始打包

electron-packager . app --win --out presenterTool --arch=x64 --version 1.4.14 --overwrite --ignore=node_modules

登录后复制

这个命令什么意思?蓝色部分可自行修改:

electron-packager . 可执行文件的文件名 –win –out 打包成的文件夹名 –arch=x64位还是32位 –version版本号 –overwrite –ignore=node_modules

web前端页面生成exe可执行文件实例

8、打包成功后,会生成一个新的文件夹,点进去,找到 exe 文件,双击就可以看到网页变成了一个桌面应用啦!

web前端页面生成exe可执行文件实例

以上是最简单的打包方式,至于怎么修改窗口大小、菜单栏怎么加、怎么调用系统API这些,就给你慢慢去研究Electron了。

如果你打包总是不成功,觉得很烦,同时对扩展功能没什么要求的话,

点击进入我的Coding代码仓库:https://coding.net/u/linhongbijkm/p/Electron-packager-build-project/git

里面有我已将内容为 hello,world 的 index.html 网页通过 Electron 框架打包为 windows 环境下的桌面应用。

现只需将你的网页前端项目复制到 /resources/app/project 目录下,双击 exe 文件即可以桌面应用的方式运行你的网页。

相关推荐:

php和js打开本地exe程序并传递相关参数方法

怎样可以在网页上调用桌面exe程序

Java中可安装的exe程序实现方法

以上就是web前端页面生成exe可执行文件实例的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2786516.html

(0)
上一篇 2025年3月8日 17:46:07
下一篇 2025年3月8日 00:20:07

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Vue+webpack基础配置分享

    最近在学习webpack,跟着课程一个单页面应用,在这里记录一下。这个部分主要讲了如何配置webpack的环境,以及webpack dev的配置。记录比较粗略,后续会更新。本文主要和大家介绍了vue+webpack项目基础配置教程,需要的朋…

    2025年3月8日 编程技术
    200
  • Vue打包出现一些map文件怎么办?

    问题: 可能很多人在做vue项目打包,打包之后js中,会自动生成一些map文件,那我们怎么把它去掉不要呢? 1,运行  cnpm run build  开始打包 2,会在项目目录下自动创建dist目录,打包好的文件都在其中 解决办法:去sr…

    编程技术 2025年3月8日
    200
  • webpack无法通过IP地址访问localhost的问题

    1、问题描述: 今天用 webpack (v1.14.0)配置本地服务,为了能在移动端预览开发效果,需要通过 IP 地址生存二维码然后手机扫描访问。却发现不能通过 ip 访问 localhost。 2、解决方案: 经多方查询,在 npm r…

    编程技术 2025年3月8日
    200
  • webpack-dev-server远程访问配置教程

    本文主要为大家分享一篇webpack-dev-server远程访问配置方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧,希望能帮助到大家。 下面的package.json文件中配置的webpack-dev-server为…

    编程技术 2025年3月8日
    200
  • react、webpack、跨域代理多页面

    初学react,利用webpack进行工程化开发管理,遇到一些问题,如多页面处理,跨域代理的设置,如何同时引入使用jquery。第一次试水,简单写了一个表格组件。 先照着react官网提供的教程使用create-react-app创建rea…

    编程技术 2025年3月8日
    200
  • webpack的优化策略

    在我们构建单页面应用(vue, react)或封装插件时,很大机会用到webpack,这个javascript的打包工具.但项目代码日益增多时,webpack一些简单的配置会暴露种种弊端(打包时间长,代码大).以下是结合自身开发和学习web…

    编程技术 2025年3月8日
    200
  • react-native WebView 返回处理方法

    项目中有些页面内容是变更比较频繁的,这些页面我们会考虑用 网页 来解决。 在RN项目中提供一个公用的Web页,如果是网页内容,就跳转到这个界面展示。 此时会有一个问题是,网页会有一级页面,二级页面,这就会设计到导航栏返回键的处理(以及在An…

    2025年3月8日 编程技术
    200
  • web端实现后退强制刷新功能代码

    本文主要和大家介绍了微信web端后退强制刷新功能的实现代码,需要的朋友可以参考下,希望能帮助到大家。 具体代码如下所示: //生成uuid var uuidChars = “0123456789ABCDEFGHIJKLMNOPQRSTUVW…

    编程技术 2025年3月8日
    200
  • JS和WebService大文件上传代码分享

    在编写前端的过程中,难免会遇到文件上传的问题,当用户要上传较大的文件是,会被服务器端限制,阻止其上传,在asp.net中,调整服务器接受文件的大小的配置方法如下:  在ASP中配置Web.config文件的httpRuntime: 登录后复…

    编程技术 2025年3月8日
    200
  • web.xml的配置

    这次给大家带来web.xml的配置,web.xml配置注意事项有哪些,下面就是实战案例,一起来看一下。 nbsp;web-app PUBLIC “-//Sun Microsystems, Inc.//DTD Web Application …

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论