iT邦幫忙

2025 iThome 鐵人賽

DAY 25
0
Vue.js

完成_個人健康習慣追蹤相關功能網站系列 第 25

任務邏輯全面抽離:從程式到架構的蛻變

  • 分享至 

  • xImage
  •  

今天的目標,就是為「重構」與「抽離邏輯」,希望讓畫面元件專心處理 UI,讓邏輯集中在 composable,首先我建立了 useTasks.js,這個檔案就像任務管理的中樞。它負責儲存任務狀態、計算完成率、依據篩選條件產生 visibleTasks,並提供 add、delete、toggle 等操作。這些邏輯原本都混在 Home.vue 裡,但現在我只需要簡單地引入 composable,就能呼叫對應的功能。

然後,在程式中用 import.meta.env.VITE_TO_EMAIL 來讀取信箱。當我重新啟動伺服器,再次按下「📧 寄送提醒信」按鈕,信件真的出現在收件匣裡時,我整個人都興奮起來。這不只是功能完成,而是一種成就感——我讓一個純前端的網站成功和外部服務互動,資料從我的畫面流向雲端,再回到信箱裡,我終於將這個功能給復活了!

在這次重構後,我的專案結構終於成型,現在整個 src 資料夾的組織變得清晰又有層次,每個檔案都有它該做的事,UI 與邏輯完全分離,以前必須在好幾個地方重複修修改改,現在只要改 composable,整個網站都能同步更新。這就是組合式架構的強大之處,也是 Vue 3 的精華所在。

Day 25 的學習,讓我真正體會到「重構」的重要。這天我學到的不只是 Vue 的寫法,而是開發思維的轉變。當專案規模變大,程式可讀性與維護性會比新功能更關鍵。抽離邏輯讓我懂得如何設計乾淨的 API,如何讓不同元件共用同一份智慧,如何讓代碼本身變得更像「系統」而非「拼湊」。同時,寄信功能的成功也象徵著整個專案的成熟,因為它已經能與外部世界交流。

今天信箱收到的內容長這樣:
https://ithelp.ithome.com.tw/upload/images/20251009/20178068ZgOknM9cZ2.png


上一篇
程式碼凍結 & 專案整潔(Repo Hygiene)
系列文
完成_個人健康習慣追蹤相關功能網站25
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言