前端桌面应用开发:Electron介绍与实践(2)

简介: 前端桌面应用开发:Electron介绍与实践(2)

3.4 创建一个简单的窗口

main.js中添加以下代码,以创建一个简单的窗口:

const {
    app, BrowserWindow } = require('electron');

function createWindow() {
   
  const win = new BrowserWindow({
   
    width: 800,
    height: 600,
    webPreferences: {
   
      nodeIntegration: true,
    },
  });

  win.loadFile('src/index.html');
}

app.whenReady().then(() => {
   
  createWindow();

  app.on('activate', () => {
   
    if (BrowserWindow.getAllWindows().length === 0) {
   
      createWindow();
    }
  });
});

app.on('window-all-closed', () => {
   
  if (process.platform !== 'darwin') {
   
    app.quit();
  }
});

3.5 构建和运行应用

package.json中添加以下脚本,用于构建和运行应用:

"scripts": {
   
  "start": "electron ."
}

现在,你可以运行应用:

npm start

4. 实践:创建一个任务管理器应用

让我们通过一个简单的实践项目来更好地理解Electron的使用。我们将创建一个简单的任务管理器应用,可以添加、编辑和删除任务。

4.1 项目结构

task-manager/
|-- src/
|   |-- index.html
|   |-- main.js
|   |-- renderer.js
|   |-- styles.css
|-- package.json

4.2 主页面

index.html中添加以下代码:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Task Manager</title>
  <link rel="stylesheet" href="styles.css">
</head>
<body>
  <div id="app">
    <h1>Task Manager</h1>
    <div id="task-list"></div>
    <input type="text" id="task-input" placeholder="Enter a new task...">
    <button id="add-button">Add Task</button>
  </div>
  <script src="renderer.js"></script>
</body>
</html>
相关文章
|
18天前
|
资源调度 运维 JavaScript
使用electron创建桌面应用及常见打包错误解决
使用electron创建桌面应用及常见打包错误解决
148 3
|
5天前
|
JSON JavaScript 前端开发
开发桌面程序-Electron入门
【10月更文挑战第16天】Electron 是一个使用 JavaScript、HTML 和 CSS 构建跨平台桌面应用的框架,嵌入了 Chromium 和 Node.js。本文介绍了如何搭建 Electron 开发环境,包括安装 Node.js、创建项目、配置 main.js 和打包应用。通过简单的步骤,你可以快速创建并运行一个基本的 Electron 应用程序。
开发桌面程序-Electron入门
|
10天前
|
人工智能 资源调度 数据可视化
【AI应用落地实战】智能文档处理本地部署——可视化文档解析前端TextIn ParseX实践
2024长沙·中国1024程序员节以“智能应用新生态”为主题,吸引了众多技术大咖。合合信息展示了“智能文档处理百宝箱”的三大工具:可视化文档解析前端TextIn ParseX、向量化acge-embedding模型和文档解析测评工具markdown_tester,助力智能文档处理与知识管理。
|
19天前
|
前端开发 JavaScript 开发者
构建工具对比:Webpack与Rollup的前端工程化实践
【10月更文挑战第11天】本文对比了前端构建工具Webpack和Rollup,探讨了它们在模块打包、资源配置、构建速度等方面的异同。通过具体示例,展示了两者的基本配置和使用方法,帮助开发者根据项目需求选择合适的工具。
14 3
|
17天前
|
人工智能 前端开发 测试技术
探索前端与 AI 的结合:如何用 GPT-4 助力开发效率
本文介绍了 GPT-4 如何成为前端开发者的“神队友”,让开发变得更加高效愉快。无论是需求到代码的自动生成、快速调试和性能优化,还是自动化测试和技术选型,GPT-4 都能提供极大的帮助。通过智能生成代码、捕捉 BUG、优化性能、自动化测试生成以及技术支持,GPT-4 成为开发者不可或缺的工具,帮助他们从繁重的手动任务中解脱出来,专注于创新和创意。GPT-4 正在彻底改变开发流程,让开发者从“辛苦码农”转变为“效率王者”。
26 0
探索前端与 AI 的结合:如何用 GPT-4 助力开发效率
|
16天前
|
开发框架 JavaScript 前端开发
Electron技术深度解析:构建跨平台桌面应用的利器
【10月更文挑战第13天】Electron技术深度解析:构建跨平台桌面应用的利器
95 0
|
17天前
|
JavaScript 前端开发 Docker
拿下奇怪的前端报错(二):nvm不可用报错`GLIBC_2.27‘‘GLIBCXX_3.4.20‘not Found?+ 使用docker构建多个前端项目实践
本文介绍了在多版本Node.js环境中使用nvm进行版本管理和遇到的问题,以及通过Docker化构建流程来解决兼容性问题的方法。文中详细描述了构建Docker镜像、启动临时容器复制构建产物的具体步骤,有效解决了不同项目对Node.js版本的不同需求。
|
17天前
|
JavaScript 前端开发 应用服务中间件
Vue开发中,在实现单页面应用(SPA)前端路由时的hash模式和history模式的区别及详细介绍
Vue开发中,在实现单页面应用(SPA)前端路由时的hash模式和history模式的区别及详细介绍
20 0
|
23天前
|
前端开发 JavaScript 小程序
前端uni开发后端用PHP的圈子系统该 如何做源码?
圈子系统系统基于TP6+Uni-app框架开发;客户移动端采用uni-app开发,管理后台TH6开发。系统支持微信公众号端、微信小程序端、H5端、PC端多端账号同步,可快速打包生成APP
|
17天前
|
存储 人工智能 前端开发
前端大模型应用笔记(三):Vue3+Antdv+transformers+本地模型实现浏览器端侧增强搜索
本文介绍了一个纯前端实现的增强列表搜索应用,通过使用Transformer模型,实现了更智能的搜索功能,如使用“番茄”可以搜索到“西红柿”。项目基于Vue3和Ant Design Vue,使用了Xenova的bge-base-zh-v1.5模型。文章详细介绍了从环境搭建、数据准备到具体实现的全过程,并展示了实际效果和待改进点。