首页 > 编程语言 >electron打包angular为exe程序,比较新版本的angular和electron

electron打包angular为exe程序,比较新版本的angular和electron

时间:2024-06-18 15:11:24浏览次数:26  
标签:npm index exe const electron angular 打包

一。 先创建一个angular项目,具体安装步骤可以查看angular官网介绍,这里不做过多介绍,(https://angular.cn/guide/setup-local)这是官网安装地址,有可能地址会访问不了:

  1.全局安装Angular CLI:npm install -g @angular/cli    

  2.创建一个名称为test的项目:ng new test

二。安装electron,注意如果使用npm官方镜像安装electron会比较慢,这里我们切换成淘宝镜像会更好更快,(https://www.electronjs.org/zh/docs/latest/tutorial/quick-start)这是官网安装地址,有可能地址会访问不了:

  1.安装electron:npm install --save-dev electron

  2.安装electron的打包脚手架:npm install --save-dev @electron-forge/cli

  3.使用"import"命令设置 Forge 的脚手架:npx electron-forge import

  4.安装好后,package.json中的scripts中会多打包的命令,如下图所示,需要把"start":"electron -forge start"改成angular的启动命令,现在这是electron的启动命令

  5.修改后如下图所示:

 

三。到这里angular和electron就安装好了,现在需要做一些配置,在package.json中添加如下图:

  1.description和author这两个字段不能为空,可以随意填写;main对应的就是electron的的打包入口文件

 

  2.找到src/index.html,修改如下图所示

   3.执行angular的打包命令,npm run build,打包完成会得到一个dist目录的,我这里打包完成后的的index.html如下图所示,记住这个路径(dist/angular1/browser/index.html),如下图所示:

  4.创建main.js,和package.json同级目录创建,也就是根目录下创建,注意路径红色字体提醒,具体内容如下:   

    const {app,BrowserWindow, ipcMain} = require('electron');     const path = require('node:path')     const createWindow=()=>{       const win=new BrowserWindow({         // width:800,//窗口具体宽度         // height:800,//窗口具体高度          webPreferences: {           nodeIntegration: true,//打开浏览器调试          }       })       win.maximize();//窗口默认最大化         //先执行npm润build后的dist目录下的index.html,即上一步骤的index.html的路径       win.loadURL(`file://${__dirname}/dist/angular0/browser/index.html`);//加载的具体位置     }
    function handleSetTitle(event,title){       const webContents=event.sender;       const win=BrowserWindow.fromWebContents(webContents)       win.setTitle(title)     }
    app.whenReady().then(()=>{       ipcMain.handle('ping', () => 'pong')       ipcMain.on('set-title',handleSetTitle)       createWindow()       app.on('active',()=>{         if(BrowserWindow.getAllWindows().length === 0){           createWindow()         }       })       app.on('window-all-closed',()=>{         if(process.platform !== 'darwin'){           app.quit();         }       })     })   5.可以使用启动命令查看是否启动成功:npm run electron   6.执行打包命令:npm run package 和 npm run make都可以使用,有一点差别,可以自己实际使用,我这里使用 npm run package ,第一个是打包后的目录文件夹,第二张图是打包后的exe:  

 

 

 

 

标签:npm,index,exe,const,electron,angular,打包
From: https://www.cnblogs.com/dyj--php/p/18254259

相关文章

  • Angular项目简单使用拦截器 httpClient 请求响应处理
    1:为啥要使用拦截器httpClient请求响应处理,其作用我们主要是:目前我的Angular版本是Angular17.3,版本中实现请求和响应的拦截处理了。这种机制非常适合添加如身份验证头、错误统一处理、日志记录等功能。======具体的操作步骤=======2:注入服务:nggsservices/myhttp-intercept......
  • Angular项目路由配置与导航守卫
    1:一个项目的所有组件如下测试案例:AppComponent,HomeComponent,TopComponent,MenuComponent,ProductComponent,BodyComponent,MydialogComponent,MybooksComponent,StudentComponent,TeacherComponent,WelcomeComponent,......
  • Fatal error in launcher: Unable to create process using ‘“python.exe“ “\pyt
    1.设置环境变量将pip和python的路径加入环境变量中2.在cmd中,查看是否存在python,pip等3.把应用安装程序中的python.exe和python3.exe关闭4.正常使用详情请看微软的常见问题,链接如下:关于在Windows上使用Python的FAQ|MicrosoftLearn......
  • 启动应用程序出现nbtstat.exe找不到问题解决
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个nbtstat.exe文件(挑选合适的版本文件)把它放......
  • 启动应用程序出现NetProj.exe找不到问题解决
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个NetProj.exe文件(挑选合适的版本文件)把它放......
  • 启动应用程序出现notepad.exe找不到问题解决
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个notepad.exe文件(挑选合适的版本文件)把它放......
  • 启动应用程序出现nslookup.exe找不到问题解决
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个nslookup.exe文件(挑选合适的版本文件)把它......
  • Angular 18+ 高级教程 – Memory leak, unsubscribe, onDestroy
    何谓 MemoryLeak?Angular是SPA(Single-pageapplication)框架,用来开发SPA。SPA最大的特点就是它不刷新页面,不刷新就容易造成memoryleak。举个例子:有一个页面A,我们写了一个setInterval执行一些代码(比如autoplay幻灯片)。当用户离开页面A去页面B时,传统网......
  • wine-在mac上运行exe执行文件
    TouseWinetoruna.exefileonaMac,followthesesteps:Step1:InstallHomebrew(ifnotalreadyinstalled)HomebrewisapackagemanagerformacOSthatsimplifiestheinstallationofsoftware.OpenTerminal.InstallHomebrewbyrunningthefollowing......
  • exercism查看他人答案
    exercism.org正常情况下要求提交答案并测试通过才能看到其他人的答案,如果想直接参考他人答案可以在url后面添加/solutions即可。问题页面:https://exercism.org/tracks/rust/exercises/poker答案页面:https://exercism.org/tracks/rust/exercises/poker/solutions也可以参考这个......