diff --git a/src/features/posts/Feed.js b/src/features/posts/Feed.js index 5eb696b..528ffef 100644 --- a/src/features/posts/Feed.js +++ b/src/features/posts/Feed.js @@ -91,17 +91,8 @@ export default function Feed() { let newFeed = sortedPosts.map((post) => { return ( ); }) diff --git a/src/features/posts/Post.js b/src/features/posts/Post.js index bd8e3ed..663096d 100644 --- a/src/features/posts/Post.js +++ b/src/features/posts/Post.js @@ -1,10 +1,23 @@ import React, { useState, useEffect } from "react"; import './Post.css'; -export default function Post({title,author,subreddit,ups,comments,time,key,media,permalink,selftext,video}) { +export default function Post({data, key}) { + + let title = data.title; // imports from data passed in from Feed + let author = data.author; + let subreddit = data.subreddit; + let ups = data.ups; + let comments = data.num_comments; + let time = data.created_utc; + let media = data.post_hint === 'image' && data.url; + let permalink = data.permalink; + let selftext= data.selftext; + let video = data.is_video ? data.media.reddit_video.fallback_url : null; // to do: handle media edge cases, especially video + const limit = 300; const [body, setBody] = useState(selftext); + const postDate = new Date(time * 1000); // handles conversion from unix timestamp to local time and date strings const localTime = postDate.toLocaleTimeString(); const localDate = postDate.toLocaleDateString(); diff --git a/src/features/posts/postsSlice.js b/src/features/posts/postsSlice.js index 99bc23d..6fbacdf 100644 --- a/src/features/posts/postsSlice.js +++ b/src/features/posts/postsSlice.js @@ -28,7 +28,7 @@ export const fetchComments = createAsyncThunk( console.log(e); } } -) +); export const postsSlice = createSlice({ name: 'posts', @@ -67,4 +67,5 @@ export const postsSlice = createSlice({ export default postsSlice.reducer; export const selectPosts = state => state.postsSlice.posts; export const { filterPosts, updatePosts } = postsSlice.actions; -// exports also includes fetchBySub (takes argument of a sub) \ No newline at end of file +// exports also includes fetchBySub (takes argument of a sub) +// exports also includes fetchComments (takes argument of a post permalink) \ No newline at end of file