iT邦幫忙

2026 iThome 鐵人賽

DAY 20
0

今天的目標很單純:讓使用者可以打字、送出、看到對話。
介面組成
我做了輸入框、送出按鈕與訊息列表,並用不同顏色區分使用者與 AI 的對話泡泡,另外預留一塊區域顯示文法修正與更自然的說法。
先用假資料
為了不被後端卡住,我先用假資料測試版面,確認排版與捲動都正常,再接上真實 API。還加了「載入中」提示,讓使用者知道 AI 正在思考。
踩雷紀錄:資料變了,畫面卻沒變
送出訊息後,AI 的修正結果要補在使用者那則訊息底下,但畫面一直沒有更新。原因是 Vue 3 追蹤的是陣列裡的「代理(proxy)物件」,而我是先建立一個物件、放進陣列,再去修改那個原始物件,Vue 完全沒有察覺。
解法是放進陣列之後,從陣列裡把那一筆取回來再修改。這種問題很難從程式碼表面看出來:資料其實有變,只是畫面不知道。
小結
前後端分開開發,可以降低一次處理太多問題的壓力,也更容易定位錯誤。


上一篇
Day 19|認識 React / Vue 等前端框架與基本網頁結構
下一篇
Day 21|前後端串接
系列文
AI 情境英文口語教練——結合 LLM 與自動化工作流的個人化英文學習系統 共 30 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言