import "../css/Article.css" import React, { useEffect, useState, useContext } from 'react'; import cookie from 'react-cookies'; import { Routes, Route, Link, useNavigate, Navigate, useParams } from 'react-router-dom'; import { UserContext, ArticleContext } from '../Context.js'; import { DateTime } from 'luxon'; import axios from 'axios'; axios.defaults.withCredentials = true; function Comments({ data }) { const { _id, content, author, createdAt } = data; let params = useParams(); const navigate = useNavigate(); function MoveTo(link) { navigate(link) } const articleContext = useContext(ArticleContext); const userinfo = cookie.load('name') const date = DateTime.fromISO(createdAt).toFormat('yyyy-MM-dd HH:mm'); function DeleteComment(e) { const data = { id: _id } axios .delete(`http://13.125.128.95:8080/article/${params.id}/comment/${_id}`, data, { headers: { "Content-Type": 'application/json' } }) .then(res => { return articleContext.requestLoadArticleById(params.id) }) .then(res => { articleContext.setArticle(res.data) }) .catch(err => { console.error(err); }); }; if (userinfo.id === author.google.id) { return ( <div class="comment" style={{ display: 'flex' }}> <p>{author.nickname}</p> <p>{content}</p> <p>{date}</p> <button style={{ width: '30px', height: '30px' }} onClick={DeleteComment} type="submit">X</button> </div> ); } else { return ( <div class="comment" style={{ display: 'flex' }}> <p>{author.nickname}</p> <p>{content}</p> <p>{date}</p> </div> ); } } export default Comments;