iT邦幫忙

2026 iThome 鐵人賽

DAY 10
0
AI Engineering

用 React x Dify 打造 AI 智慧用藥監測系統系列 第 10

DAY10 完成前端 CRUD 拼圖:實作用藥清單的「刪除」功能

  • 分享至 

  • xImage
  •  

在前幾天的實作中,我們已經完成了前端 CRUD (新增 Create、讀取 Read、更新 Update、刪除 Delete) 中的前三項。今天,我們要來完成最後一塊拼圖——「刪除」功能,讓使用者可以移除建立錯誤的用藥排程。

在 React 中處理陣列刪除時,我們不能像傳統 JavaScript 那樣使用 splice 直接修改原陣列(這會破壞 React 的不可變性 Immutability 規則),而是要利用 filter 陣列方法,過濾掉不要的資料並回傳一個全新的陣列。

Step 1:撰寫刪除邏輯 (Delete)
打開 src/components/MedicationList.jsx。因為昨天我們已經把 setMedications 透過 Props 傳進來了,所以我們可以直接在這個元件裡面撰寫刪除函數。
confirmTakeMedication 函數的下方,新增這個 handleDelete 函數。為了避免誤觸,我們加入瀏覽器內建的 window.confirm 做最簡單的防呆對話框:
https://ithelp.ithome.com.tw/upload/images/20260903/20178797zU7IP0IU9z.jpg

Step 2:在介面上加入「刪除按鈕」
接著往下捲動到 return 的區塊,找到 medications.map 迴圈裡面,原本放「已服用 / 確認服用」按鈕的地方。
我們要在外層套用一個 flex items-center space-x-3 的容器,並在狀態標籤的旁邊加上一個簡單的垃圾桶按鈕。
更新按鈕區塊的程式碼如下:
https://ithelp.ithome.com.tw/upload/images/20260903/20178797WHLghf5FTB.jpg

成功之後你會在確認鍵旁邊看到一個垃圾桶標示,點擊之後就會刪除你新增那筆的資料
https://ithelp.ithome.com.tw/upload/images/20260903/2017879748VWKC4zQC.jpg
https://ithelp.ithome.com.tw/upload/images/20260903/20178797EgySTRhB6L.jpg


上一篇
DAY9 讓表單動起來:React 狀態提升 (Lifting State Up) 與新增功能實作
下一篇
DAY11 讓資料活下來:使用 LocalStorage 與 useEffect 實現資料持久化
系列文
用 React x Dify 打造 AI 智慧用藥監測系統24
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言