使用electron+vue开发一个跨平台todolist(便签)桌面应用

使用electron+vue开发一个跨平台todolist(便签)桌面应用

# 1

最近一直在使用electron开发桌面应用,对于一个web开发者来说,html+javascript+css的开发体验让我非常舒服。之前我一直简单的以为electron只是张网页加个壳,和那些号称跨平台的运行在手机上的webapp是一个套路。直到我真的需要开发一个跨平台桌面应用的时候,我又认真的尝试了一下electron,我开始意识到:这才是我理想中的跨平台桌面应用开发的最终形态,它简直太优秀了。

# 2

在使用electron期间,我顺便写了一个简单的todolist(便签)应用,用于学习和尝试;项目地址:https://github.com/xiajingren/xhznl-todo-list 界面参考了小黄条便签。它目前的功能还非常简单,但是包含了很多我使用electron时遇到问题,这也是electron新手都很可能遇到的,也算是一个技术总结吧;比如:

  • electron无边框透明窗口/拖拽/置顶/闪烁问题

  • electron软件开机自启动

  • electron软件单实例运行

  • electron窗口的鼠标穿透/部分穿透

  • electron软件打包

  • electron软件自动更新(GitHub)

  • electron中使用本地数据库

  • electron中数据导出为excel文件

  • 等等……

以下是项目README:

# 3

xhznl-todo-list

✨一个使用 electron + vue + electron-builder 开发的跨平台 todo-list 桌面应用

相关技术

electron 9.x

vue 2.x

vue-cli-plugin-electron-builder

electron-builder

lowdb

exceljs

dayjs

Vue.Draggable

……

功能预览

todo list

done list

基本操作

数据导出

鼠标穿透

macOS

步骤

npm install
npm run electron:serve

npm run electron:build

下载 releases:https://github.com/xiajingren/xhznl-todo-list/releases

规划

  • [x] todo/done 基本功能
  • [x] 本地数据库存储
  • [x] 软件自动更新
  • [x] 数据导出为 excel
  • [x] 开机启动
  • [x] 鼠标穿透
  • [ ] 窗口贴边自动收起
  • [ ] ……

# 4

在使用electron期间确实也遇到很多坑,其中大部分都是来自于electron编译nodejs模块。后续我可能整理一个关于electron的系列分享,介绍 xhznl-todo-list 的实现细节,欢迎关注。

GitHub:https://github.com/xiajingren/xhznl-todo-list

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/2633.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Ubuntu16.04安装中文输入法_Ubuntu触摸板驱动

    Ubuntu16.04安装中文输入法_Ubuntu触摸板驱动最近安装了ubuntu18.10,但是不能使用中文输入法。准备试一试搜狗输入法。但是无法安装成功。就准备使用系统自带的输入法第一步:安装自带中文输入法在设置里选择region&language选择instll/Re…

    2022年9月26日
    3
  • django 模板_dede模板循环变量

    django 模板_dede模板循环变量变量模板中可以包含变量,Django在渲染模板的时候,可以传递变量对应的值过去进行替换。变量的命名规范和Python非常类似,只能是阿拉伯数字和英文字符以及下划线的组合,不能出现标点符号等特殊字符。

    2022年7月30日
    9
  • mysql索引abc,a=1 and c=2是否可使用索引_sql联合索引

    mysql索引abc,a=1 and c=2是否可使用索引_sql联合索引在一次查询中,MySQL只能使用一个索引。在真实项目中,SQL语句中的WHERE子句里通常会包含多个查询条件还会有排序、分组等。若表中索引过多,会影响INSERT及UPDATE性能,简单说就是会影响数据写入性能。因为更新数据的同时,也要同时更新索引。最实际的好处当然是查询速度快,性能好。MYSQL中常用的强制性操作(例如强制索引)https://www.jb51.net/article/49807…

    2025年9月18日
    6
  • SQL中的聚合函数介绍

    SQL中的聚合函数介绍  什么是聚合函数(aggregatefunction)?聚合函数对一组值执行计算并返回单一的值。 聚合函数有什么特点?除了COUNT以外,聚合函数忽略空值。 聚合函数经常与SELECT语句的GROUPBY子句一同使用。 所有聚合函数都具有确定性。任何时候用一组给定的输入值调用它们时,都返回相同的值。 标量函数:只能对单个的数字或值进行计算。主…

    2022年6月21日
    34
  • jetbrain 激活码【最新永久激活】

    (jetbrain 激活码)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月30日
    709
  • Struts2漏洞总结

    Struts2漏洞总结Struts2漏洞总结

    2022年7月19日
    23

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号