iT邦幫忙

2025 iThome 鐵人賽

DAY 12
0
Vue.js

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

自動寄信提醒(EmailJS)_第一封網站寄來的信

  • 分享至 

  • xImage
  •  

昨天(Day 11)我才剛完成 EmailJS 的註冊,拿到很重要的 Public Key、Service ID 和 Template ID。今天(Day 12),我終於把這些金鑰用在我的 Vue 小專案裡,讓網站可以真的寄出一封信!
想達到祭出信的目標有五部需要做到:

  1. 安裝套件
    在專案根目錄輸入 npm i @emailjs/browser,把 EmailJS 套件裝進來,讓網站有能力「對外寄信」。
  2. 建立 .env 檔案
    在專案根目錄新增 .env,寫入三組憑證:
    VITE_EMAILJS_PUBLIC_KEY=xxxxxx
    VITE_EMAILJS_SERVICE_ID=service_xxxxxx
    VITE_EMAILJS_TEMPLATE_ID=template_xxxxxx
    ```(記得要將xxxxxx變成自己在第11天申請到的ID唷!!)
    這一步就像把「信箱鑰匙」交給網站,沒有這三把鑰匙,網站是沒辦法透過 EmailJS 投遞信件的!
    
  3. 封裝 email.js
    src/services/ 裡新增 email.js,建立 sendReminderEmail() 函式,把寄信邏輯集中在這裡,才方便呼叫。
  4. 在 Home.vue 加測試按鈕
    今天我有在任務清單下方多加一顆「測試寄信」的按鈕,點下去就會呼叫 sendReminderEmail(),把目前的任務清單組成信件內容寄出。
  5. 驗證結果
    一開始出現「寄信失敗,請檢查設定」,後來發現是因為我漏做了.env 檔案,在修正後並重啟 npm run dev,終於成功在設定好的信箱內,看見信的出現啦!
    https://ithelp.ithome.com.tw/upload/images/20250926/20178068Sa5a1m4mGs.png
    成果驗收
    當我打開 Gmail,看到標題「Day 12 測試信」,內容裡寫著「嗨~ Rachel」以及任務清單「深呼吸、喝水、大笑」時,真的超興奮的!!我終於成功我的網站「開口跟我說話」,讓我的網站不再只是冷冰冰的清單,而是主動寄來提醒的貼心小幫手。
    今天的挑戰讓我真正體會到什麼叫「功能上線」:從前端畫面到外部服務的整合,完成的那一刻,網站真的活了過來。接下來,請繼續期待未來網站的升級 ,讓這個小幫手不只會寄信,說不定還能用不同語言和我對話!

上一篇
自動寄信提醒(EmailJS)— 註冊與初始設定
系列文
完成_個人健康習慣追蹤相關功能網站12
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言