@@ -52,13 +52,6 @@ function PreviewCard({
52
52
const [ storyIsSaved , setStoryIsSaved ] = useState ( false ) ;
53
53
const { channels, initializeChannel, publish } = usePubSub ( ) ;
54
54
55
- const savedStoryImageComponent = useMemo ( ( ) => {
56
- return < Image style = { { width : 30 , height : 30 } } source = { savedStoryImage } /> ;
57
- } , [ ] ) ;
58
- const saveStoryImageComponent = useMemo ( ( ) => {
59
- return < Image style = { { width : 30 , height : 30 } } source = { saveStoryImage } /> ;
60
- } , [ ] ) ;
61
-
62
55
useEffect ( ( ) => {
63
56
isStoryInReadingList ( storyId , user ?. id ) . then ( storyInReadingList => {
64
57
setStoryIsSaved ( storyInReadingList ) ;
@@ -81,7 +74,8 @@ function PreviewCard({
81
74
82
75
const saveStory = async ( saved : boolean ) => {
83
76
setStoryIsSaved ( saved ) ;
84
- publish ( storyId , saved ) ;
77
+ publish ( storyId , saved ) ; // update other cards with this story
78
+
85
79
if ( saved ) {
86
80
await addUserStoryToReadingList ( user ?. id , storyId ) ;
87
81
} else {
@@ -97,7 +91,17 @@ function PreviewCard({
97
91
{ title }
98
92
</ Text >
99
93
< TouchableOpacity onPress = { ( ) => saveStory ( ! storyIsSaved ) } >
100
- { storyIsSaved ? savedStoryImageComponent : saveStoryImageComponent }
94
+ { storyIsSaved ? (
95
+ < Image
96
+ style = { { width : 30 , height : 30 } }
97
+ source = { savedStoryImage }
98
+ />
99
+ ) : (
100
+ < Image
101
+ style = { { width : 30 , height : 30 } }
102
+ source = { saveStoryImage }
103
+ />
104
+ ) }
101
105
</ TouchableOpacity >
102
106
</ View >
103
107
< View style = { styles . body } >
0 commit comments