Skip to content

Commit 1d803e0

Browse files
author
Marek Fořt
committed
Fix Reminders example
1 parent a882f72 commit 1d803e0

File tree

1 file changed

+25
-19
lines changed

1 file changed

+25
-19
lines changed

fixture/src/Reminders.tsx

Lines changed: 25 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,10 @@ const ReminderCell = ({
5757
// We delete the element after 1s
5858
// like the reminders app does on iOS
5959
setTimeout(() => {
60-
onCompleted(item);
6160
setChecked(false);
61+
onCompleted(item);
6262
}, 1000);
63-
}, [checked, item]);
63+
}, [checked, item, onCompleted]);
6464

6565
return (
6666
<Animated.View
@@ -121,37 +121,43 @@ const Reminders = () => {
121121
]);
122122
};
123123

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+
);
132135

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+
);
140146

141147
const list = useRef<FlashList<Reminder> | null>(null);
142148

143149
const onChangeText = useCallback(
144150
(item: Reminder, text: string) => {
145151
updateTitle(item.id, text);
146152
},
147-
[reminders]
153+
[updateTitle]
148154
);
149155

150156
const onCompleted = useCallback(
151157
(item: Reminder) => {
152158
removeItem(item);
153159
},
154-
[reminders]
160+
[removeItem]
155161
);
156162

157163
const animateToBottomIfNewItemAdded = (item: Reminder) => {

0 commit comments

Comments
 (0)