實作 Todo Item 編輯功能
#
切換 isEdit 狀態#
修改 CSS修改 .edit
的 class 讓編輯的樣式更明顯
src/App.scss
#
建立 updateIsEdit 方法透過 updateIsEdit
來修改 todoItem 的 isEdit
狀態:
src/App.js
- 將
updateIsEdit
方法從App
傳入Todos
後,再從Todos
傳入 `TodoItem - 在
task-item
透過clsx
添加 edit 的樣式
src/components/TodoItem.js
#
取得使用者輸入的內容src/components/TodoItem.js
#
取得使用者點擊的按鍵/src/component/TodoItem
#
保存編輯在 App.js
中撰寫 handleSave
方法:
src/App.js
在 TodoItem
的 handleKeyDown
中呼叫 handleSave
:
src/components/TodoItem.js
#
取消編輯- 透過
updateIsEdit()
把 isEdit 改回false
- 透過
setTempTodo
復原 title
src/components/TodoItem.js