使用electron+vue開發一個跨平臺todolist(便籤)桌面應用

2021-03-02 小黑在哪裡
點擊上方藍字"小黑在哪裡"關注我吧# 1

最近一直在使用electron開發桌面應用,對於一個web開發者來說,html+javascript+css的開發體驗讓我非常舒服。之前我一直簡單的以為electron只是張網頁加個殼,和那些號稱跨平臺的運行在手機上的webapp是一個套路。直到我真的需要開發一個跨平臺桌面應用的時候,我又認真的嘗試了一下electron,我開始意識到:這才是我理想中的跨平臺桌面應用開發的最終形態,它簡直太優秀了。

# 2

在使用electron期間,我順便寫了一個簡單的todolist(便籤)應用,用於學習和嘗試;項目地址:https://github.com/xiajingren/xhznl-todo-list 界面參考了小黃條便籤。它目前的功能還非常簡單,但是包含了很多我使用electron時遇到問題,這也是electron新手都很可能遇到的,也算是一個技術總結吧;比如:

electron無邊框透明窗口/拖拽/置頂/閃爍問題

以下是項目README:

# 3xhznl-todo-list

:sparkles:一個使用 electron + vue + electron-builder 開發的跨平臺 todolist(便籤)桌面應用

相關技術

electron 9.x[1]

vue 2.x[2]

vue-cli-plugin-electron-builder[3]

electron-builder[4]

lowdb[5]

exceljs[6]

dayjs[7]

Vue.Draggable[8]

.

功能預覽todo listdone list基本操作數據導出滑鼠穿透macOS步驟
npm install
npm run electron:serve

npm run electron:build

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

規劃# 4

在使用electron期間確實也遇到很多坑,其中大部分都是來自於electron編譯nodejs模塊。後續我可能整理一個關於electron的系列分享,介紹 xhznl-todo-list[9] 的實現細節,歡迎關注。

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

或點擊下方「 閱讀原文 」 

參考資料[1]

electron 9.x: https://github.com/electron/electron

[2]

vue 2.x: https://github.com/vuejs/vue

[3]

vue-cli-plugin-electron-builder: https://github.com/nklayman/vue-cli-plugin-electron-builder

[4]

electron-builder: https://github.com/electron-userland/electron-builder

[5]

lowdb: https://github.com/typicode/lowdb

[6]

exceljs: https://github.com/exceljs/exceljs

[7]

dayjs: https://github.com/iamkun/dayjs

[8]

Vue.Draggable: https://github.com/SortableJS/Vue.Draggable

[9]

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

如果本文對您有用,

不妨點個「」或者轉發朋友圈支持一下

我不知會遇見你

相關焦點

  • 使用React、Electron、Dva、Webpack、Node.js、Websocket快速構建跨平臺應用
    不能否認,現在的大前端,真的太牛了,PC端可以跨三種平臺開發,移動端可以一次編寫,生成各種小程序以及React-native應用,然後跑在ios和安卓以及網頁中 , 這裡不得不說——京東的Taro框架 這些人 已經把Node.js
  • JavaScript開發重型跨平臺應用以及架構
    當然肯定使用了不少C++插件,說到這裡,留下傷心的眼淚,最近也是被折磨得很難受成功開發一個重型應用的好處出去面試基本上很容易成功,特別是專業性強的崗位,例如你在QQ開發了十幾年,你根本不用出去找工作,當然你應該也不會跑技術全面,複雜場景你都能hold住有能吹的地方,可以跟誰說:我開發的東西,多少萬人在用,老了還能吹。
  • 準備將您的Vue應用遷移到Vue 3
    避免使用Vue事件總線簡短總結:不要使用\$on/$once/$off API,因為它會在Vue公司3被棄用。如果您聽說過事件總線,那麼當您遇到需要為從孩子向父母發送事件或從孩子向父母發送事件的快捷方式的情況下,它是Vue開發中的常用術語。您只需在瀏覽器中搜索「事件事件總線」,就會發現很多說明它的文章。
  • 騰訊QQ便籤應用停止運營有什麼可以替代雲便籤
    QQ便籤可以說是QQ用戶使用較多的便籤軟體,雖然QQ便籤內容無法同步到手機QQ、無法設置提醒待辦事項通知、無法誤刪除後恢復便籤內容等問題,但是QQ便籤是集成在QQ聊天軟體,給很多用戶帶來了便利,在登錄QQ的同時也同時打開QQ
  • 桌面便籤小工具
    打開APP 桌面便籤小工具 小淳 發表於 2020-04-07 11:04:11
  • 蘋果帶提醒的便籤軟體哪個好?
    經常使用蘋果手機的小夥伴,應該都知道:iPhone手機上的備忘工具是備忘錄和提醒事項。如果有什麼事需要記錄和提醒的話,可以分別在這兩款app中進行設置。只不過,記錄和提醒,需要分別在兩款app中獨立進行設置,多多少少有些不便。
  • WhatsApp被爆正開發新功能 同一帳號或將可以跨終端、跨平臺使用
    近期,Facebook 旗下的通訊應用 WhatsApp 被曝正在開發一項功能,該功能允許用戶使用多個設備登錄同一個帳號。
  • 推薦幾款好用的手機雲便籤APP和電腦雲便籤軟體
    一、敬業籤雲便籤敬業籤雲便籤百度搜索結果排名第一,敬業籤是一款電腦和手機雲同步桌面便籤軟體(包含:Windows/Android/iPhone/iPad/Web/小程序)等多端自動雲同步便籤應用軟體,而且基礎功能永久免費無廣告,還支持公曆/農曆定時提醒待辦事項(包含
  • 怎樣使用小魚便籤
    我們可以通過電腦桌面的便籤,進行記錄一些重要的事項作為提醒。首先,在桌面找到小魚便籤的圖標,雙擊圖標創建便籤。如果需要多個便籤,我們可以點擊便籤的加號進行增加便籤,也可以選擇便籤模式。我們可以點擊「事件便籤」,創建一款事件便籤。我們把滑鼠放到事件便籤的某一事件上, 可以看見「鬧鐘」和「刪除」標識,我們可以設置鬧鐘,作為提醒。
  • 有可以間隔兩個月提醒的電腦桌面便籤軟體嗎?
    公司的財務經理是一個非常厲害的女強人,她的工作非常繁忙,即使這樣她也不會忘了每兩個月提交一次財務報告,我們都非常崇拜她,她是如何做到的把工作做的井井有條,我們連每個月交工作匯報都能忘記,可是他從來都不會忘記工作中的事情。
  • vuex實現預熱篇-vue插件開發
    #泛舟計劃·讓知識更好看#1.如何引用vue插件呢?Vue.use(Vuex)2.use做了什麼事呢?plugin.install.apply(plugin, args); } elseif (typeof plugin === 'function') {// 如果你傳入的不是個對象是函數,那麼我就直接執行函數 plugin.apply(null, args); } installedPlugins.push(plugin);returnthis };3.如何開發一個插件呢
  • 敬業籤桌面便籤上已完成的待辦事項去留問題說明
    敬業籤桌面便籤是一款多端同步的待辦事項提醒軟體,其中便籤記事功能中,可以針對已經辦完的事情在便籤上進行已完成處理。已完成的便籤將會有橫線划去的標識在內容欄保留以示與未完成事項的區別。下面小編將對大家疑問較多的已完成便籤的相關留存問題作出解答。
  • 跨平臺將終結
    這則新聞當時在工程界引起了轟動,同時人們也不得不重新考慮跨平臺。同年,蘋果發布了 SwiftUI,這是一個聲明性的 UI 框架,旨在吸引新手開發人員再給 Swift 一次機會(Swift 現在已經很穩定了)。如今,最常用的應用仍然依賴於 C++ 或其他相關語言,例如 Android 的 JNI 和 iOS 的Objective C。
  • 微軟VisualStudio2012同意增桌面應用功能
    【賽迪網訊】6月9日消息,據國外媒體報導,微軟聽從開發者的反饋意見,決定為免費的Express版Visual Studio 2012軟體開發工具增加開發Windows 8桌面應用程式的功能。這對於微軟原來在免費版開發工具中不支持開發Windows 8桌面應用程式的計劃是一個180度大轉彎。
  • 谷歌推出全新照片搜索應用 展示Flutter應用新特性
    和微軟一樣,谷歌也在積極地開發跨平臺 UI 解決方案--Flutter。它是適用於桌面端、移動端和網頁端的開源 UI 框架。基於 Flutter 打造的應用程式目前已實現在網頁端和移動端是運行,而谷歌正積極添加對 Windows 10 平臺的支持。
  • 如何使用JavaScript開發AR(增強現實)移動應用 (一)
    前端開發者的一個福音,就是如今我們可以僅僅憑藉JavaScript技能,就能開發一個支持增強實現的移動應用了。使用的工具是React-Native + ViroReact.下面這個視頻是Jerry的同事,SAP成都研究院數字創新空間的開發工程師Leo Wang用React-Native加上ViroReact的組合做的一個小例子:React-Native在國內早已不是一個新技術了。
  • 基於Vue實現一個有點意思的拼拼樂小遊戲
    本文轉載自【微信公眾號:趣談前端,ID:beautifulFront】經微信公眾號授權轉載,如需轉載與原文作者聯繫前言為了加深大家對vue的了解和vue項目實戰,筆者採用vue生態來重構此項目,方便大家學習和探索。
  • 技術分享:vue 過濾器
    vue 過濾器 1 關於 vue 過濾器 在vue1.0的時候其實是內置了過濾器的,但是考慮到好多過濾器並不一定會被開發所調用,所以把原本內置的過濾器就給去掉了,但是過濾器還是比較普遍的,所以我們從vue2.0之後就需要自己定義過濾器
  • 桌面版WhatsApp應用存在重大漏洞,可以讓駭客輕鬆獲取你的資料!
    如果你有在使用桌面版WhatsApp應用的話,那就請儘快更新吧。PerimeterX的研究員透露,Facebook近來放出的更新中修正了同時存在於Mac和Windows平臺的漏洞,防止了讓駭客通過在信息中插入JavaScript來遙距存取文件。
  • 便籤
    StikyNotes 是一款功能簡潔的 Windows 桌面便利貼工具,界面模仿 Win 10 自帶便籤,主要解決由於 Win 10 bug 導致的便籤數據丟失問題