@@ -57,10 +57,10 @@ const ReminderCell = ({
57
57
// We delete the element after 1s
58
58
// like the reminders app does on iOS
59
59
setTimeout ( ( ) => {
60
- onCompleted ( item ) ;
61
60
setChecked ( false ) ;
61
+ onCompleted ( item ) ;
62
62
} , 1000 ) ;
63
- } , [ checked , item ] ) ;
63
+ } , [ checked , item , onCompleted ] ) ;
64
64
65
65
return (
66
66
< Animated . View
@@ -121,37 +121,43 @@ const Reminders = () => {
121
121
] ) ;
122
122
} ;
123
123
124
- const updateTitle = ( id : string , title : string ) => {
125
- const newReminders = [ ...reminders ] ;
126
- const elem = newReminders . find ( ( reminder ) => reminder . id === id ) ;
127
- if ( elem !== undefined ) {
128
- elem . title = title ;
129
- }
130
- setReminders ( newReminders ) ;
131
- } ;
124
+ const updateTitle = useCallback (
125
+ ( id : string , title : string ) => {
126
+ const newReminders = [ ...reminders ] ;
127
+ const elem = newReminders . find ( ( reminder ) => reminder . id === id ) ;
128
+ if ( elem !== undefined ) {
129
+ elem . title = title ;
130
+ }
131
+ setReminders ( newReminders ) ;
132
+ } ,
133
+ [ setReminders , reminders ]
134
+ ) ;
132
135
133
- const removeItem = ( reminder : Reminder ) => {
134
- setReminders (
135
- reminders . filter ( ( { title } ) => {
136
- return title !== reminder . title ;
137
- } )
138
- ) ;
139
- } ;
136
+ const removeItem = useCallback (
137
+ ( reminder : Reminder ) => {
138
+ setReminders (
139
+ reminders . filter ( ( { title } ) => {
140
+ return title !== reminder . title ;
141
+ } )
142
+ ) ;
143
+ } ,
144
+ [ setReminders , reminders ]
145
+ ) ;
140
146
141
147
const list = useRef < FlashList < Reminder > | null > ( null ) ;
142
148
143
149
const onChangeText = useCallback (
144
150
( item : Reminder , text : string ) => {
145
151
updateTitle ( item . id , text ) ;
146
152
} ,
147
- [ reminders ]
153
+ [ updateTitle ]
148
154
) ;
149
155
150
156
const onCompleted = useCallback (
151
157
( item : Reminder ) => {
152
158
removeItem ( item ) ;
153
159
} ,
154
- [ reminders ]
160
+ [ removeItem ]
155
161
) ;
156
162
157
163
const animateToBottomIfNewItemAdded = ( item : Reminder ) => {
0 commit comments