월 17,600원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
App layout 하는데 계속 안돼요 ㅜ
이부분이 App layout 만들고 인덱스에 넣으면 이렇게 넣었는데 화면에서는 hello next가 안나와요 ㅠㅜ
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
npm i next-redux-wrapper에서 에러가 발생합니다.
npm i next-redux-wrapper 입력시 npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree npm ERR! npm ERR! While resolving: react-nodebird-front@1.0.0 npm ERR! Found: next@9.5.5 npm ERR! node_modules/next npm ERR! next@"^9.5.5" from the root project npm ERR! npm ERR! Could not resolve dependency: npm ERR! peer next@">=10.0.3" from next-redux-wrapper@7.0.2 npm ERR! node_modules/next-redux-wrapper npm ERR! next-redux-wrapper@"*" from the root project npm ERR! npm ERR! Fix the upstream dependency conflict, or retry npm ERR! this command with --force, or --legacy-peer-deps npm ERR! to accept an incorrect (and potentially broken) dependency resolution. npm ERR! npm ERR! See C:\Users\정민수\AppData\Local\npm-cache\eresolve-report.txt for a full report. npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\정민수\AppData\Local\npm-cache\_logs\2021-08-29T03_51_14_259Z-debug.log 이런 에러가 발생하는데 혹시 문제점이 어떤 것인지, 그리고 해결방법이 어떻게 되는지 알 수 있을까요?
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
댓글 삭제 기능 오류 발생
제로초 선생님 강의를 듣고 나서 댓글 삭제 기능과 수정 기능 및 좋아요 갯수를 세는 기능 등을 만들어보고 있는데 아직 실력이 부족해서 그런지 상당히 헷갈리네요. 나머지는 추가로 해보려고 하고 댓글 삭제 기능만 먼저 질문드리겠습니다..! CommentEditForm.js ... import CommentRemoveBtn from './CommentRemoveBtn'; const { TextArea } = Input; const CommentEditForm = ({ post }) => { const dispatch = useDispatch(); const id = useSelector((state) => state.user.me?.id); const [editText, setEditText] = useState(''); const [commentEditMode, setCommentEditMode] = useState(false); const onReviseCommentText = useCallback((e) => { setEditText(e.target.value); }); const { reviseCommentLoading } = useSelector((state) => state.post); const onReviseComment = useCallback((CommentId) => () => { dispatch({ type: REVISE_COMMENT_REQUEST, data: { content: editText, PostId: post.id, UserId: id, CommentId, }, }); }, [editText, id]); const onRemoveComment = useCallback((CommentId) => () => { if (!id) { return alert('로그인이 필요합니다'); } return dispatch({ type: REMOVE_COMMENT_REQUEST, data: { CommentId, PostId: post.id, }, }); }, [post.id]); const onClickReviseComment = useCallback(() => { setCommentEditMode(true); }); const onCancelReviseComment = useCallback(() => { setCommentEditMode(false); }, []); return ( <div> {commentEditMode ? ( <> <TextArea value={editText} onChange={onReviseCommentText} /> <Button.Group> <Button loading={reviseCommentLoading} onClick={onReviseComment}>수정</Button> <Button type="danger" onClick={onCancelReviseComment}>취소</Button> </Button.Group> </> ) : ( <List header={`${post.Comments.length}개의 댓글`} itemLayout="horizontal" dataSource={post.Comments || []} renderItem={(item) => ( <li> <Comment actions={id && item.User.id === id ? [ <div style={{ fontSize: '13px', marginRight: '10px' }}> {moment(item.createdAt).format('MM.DD HH:mm')} </div>, <span style={{ fontSize: '13px' }} onClick={onClickReviseComment}> 수정하기 </span>, <CommentRemoveBtn onRemoveComment={onRemoveComment(item.id)} />, ] : [ <div style={{ fontSize: '13px', marginRight: '10px' }}> {moment(item.createdAt).format('MM.DD HH:mm')} </div>, ]} author={item.User.nickname} avatar={( <Link href={`/user/${item.User.id}`} prefetch={false}> <a><Avatar>{item.User.nickname[0]}</Avatar></a> </Link> )} content={item.content} /> </li> )} /> )} </div> ); }; CommentEditForm.propTypes = { post: PropTypes.object.isRequired, }; export default CommentEditForm; 댓글 삭제 기능을 구현하기 위해서 onRemoveComment 이벤트를 만들고, '삭제하기' 버튼을 누르면 REMOVE_COMMENT_REQUEST가 실행되면서 PostId와 CommentId를 넘겨주었습니다. reducers/post.js case REMOVE_COMMENT_REQUEST: draft.removeCommentLoading = true; draft.removeCommentDone = false; draft.removeCommentError = null; break; case REMOVE_COMMENT_SUCCESS: { const post = draft.mainPosts.find((v) => v.id === action.data.PostId); draft.removeCommentLoading = false; draft.removeCommentDone = true; draft.mainPosts = post.Comments.filter((v) => v.id !== action.data.CommentId); break; } case REMOVE_COMMENT_FAILURE: draft.removeCommentLoading = false; draft.removeCommentError = action.error; break; routes/post.js router.delete('/:postId/comment', isLoggedIn, async (req, res, next) => { // DELETE /post/1/comment try { const comment = await Comment.findOne({ where: { PostId: req.params.postId, UserId: req.user.id } }); await Comment.destroy({ where: { id: comment.id }, include: [{ model: User, attributes: ['id', 'nickname'], }], }); res.status(200).json({ id: comment.id, PostId: parseInt(req.params.postId, 10), UserId: req.user.id }); } catch (error) { console.error(error); next(error); } }); 리듀서와 라우터는 위와 같이 만들었는데, db에서는 정상적으로 댓글이 지워지지만 화면에서는 반영이 안됩니다. 확실히 리듀서 코드를 잘못 짜줬기 때문에 위와 같이 댓글뿐만 아니라 다른 것까지 다 지워버리는 현상이 발생하는 것 같은데, mainPosts라는 배열 안에 객체가 있고, 그 안에 Comments가 또 배열 객체를 가지고 있다보니 이를 지우는 것이 매우 헷갈리는 것 같습니다. case REMOVE_COMMENT_REQUEST: draft.removeCommentLoading = true; draft.removeCommentDone = false; draft.removeCommentError = null; break; case REMOVE_COMMENT_SUCCESS: { const post = draft.mainPosts.find((v) => v.id === action.data.PostId); draft.removeCommentLoading = false; draft.removeCommentDone = true; draft.mainPosts = post.Comments.filter((v) => v.id !== action.data.CommentId); break; } case REMOVE_COMMENT_FAILURE: draft.removeCommentLoading = false; draft.removeCommentError = action.error; break; 이 리듀서를 어떻게 수정하는 것이 좋을까요..?
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
전역 상태 관리는 왜 필요한걸까요 ?
안녕하세요 제로초님 궁금한게 생겨서 커뮤니티에 글 남깁니다. 전역상태는 왜 필요한 걸까요?
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
500 - Server-side error occurred
안녕하세요 제로초 선생님... 요즘 몇 번 질문을 드리는지 모르겠네요 ㅎ... 다름이 아니라 snap nginx 설정을 마치고 https 접속을 해보았는데 500 - Server-side error occurred 위와 같은 에러가 발생합니다. 프론트에서는 위와 같이 monit에 log가 뜨고 있습니다. local에서 접속했을 때는 아무 문제가 없는데 https 설정에 문제가 있는 것일까요? nginx.conf는 아래와 같고, default 파일은 전부 주석처리를 해주었습니다. nginx도 restart했고, 따로 status에 오류가 뜬건 없는데... 음 뭐가 문제일까요... events { worker_connections 768; # multi_accept on; } http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octet-stream; ## # SSL Settings ## ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE ssl_prefer_server_ciphers on; ## # Logging Settings ## access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; ## # Gzip Settings ## gzip on; # gzip_vary on; # gzip_proxied any; # gzip_comp_level 6; # gzip_buffers 16 8k; # gzip_http_version 1.1; # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; ## # Virtual Host Configs ## include /etc/nginx/conf.d/*.conf; include /etc/nginx/sites-enabled/*; server { server_name taewitter.com; location / { proxy_set_header HOST $host; proxy_pass http://127.0.0.1:3060; proxy_redirect off; } listen 443 ssl; ssl_certificate /etc/letsencrypt/live/taewitter.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/taewitter.com/privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; } server { if ($host = taewitter.com) { return 301 https://$host$request_uri; } server_name taewitter.com; listen 80; return 404; } } #mail { # # See sample authentication script at: # # http://wiki.nginx.org/ImapAuthenticateWithApachePhpScript # # # auth_http localhost/auth.php; # # pop3_capabilities "TOP" "USER"; # # imap_capabilities "IMAP4rev1" "UIDPLUS"; # # server { # listen localhost:110; # protocol pop3; # proxy on; # } # # server { # listen localhost:143; # protocol imap; # proxy on; # } #}
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
onRemovePost 함수 호출시 계속 같은 아이디가 나옵니다.
데브툴스로 리덕스 확인해봐도 배열로 쭈욱 포스트가 잘 들어가 있는데 삭제버튼만 누르면 post.id가 즉 함수안에서 프롭스를 쓰는 그 부분이 콘솔을 찍어봐도 첫번째꺼 id:1만 가져오네요 ㅜㅜ
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
npm i next@9 했는데
npm 다운로드를 했는데 found 0 vulnerailities 라고 안나오고 + next@9.5.5 added 705 packages from 280 contributors and audited 707 packages in 30.487s 33 packages are looking for funding run `npm fund` for details found 24 vulnerabilities (2 low, 21 moderate, 1 high) run `npm audit fix` to fix them, or `npm audit` for details 이렇게 24가지가 나옵니다 어떻게해야하나요 ?
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
댓글 수정 기능 추가 문제
안녕하세요 제로초 선생님. 댓글 수정 기능을 추가하던 도중에 React의 성질과 관련하여 질문이 생겨 질문드립니다. PostCard.js에서 CommentForm 컴포넌트와 CommentEditForm 컴포넌트 2개로 구성을 바꿨습니다. 그리고 post 데이터를 props로 넘겨주었습니다. {commentFormOpened && ( <div> <CommentForm post={post} /> <CommentEditForm post={post} /> </div> )} CommentForm.js는 아래와 같습니다 ... const CommentForm = ({ post }) => { const dispatch = useDispatch(); ... useEffect(() => { if (addCommentDone) { setCommentText(''); } }, [addCommentDone]); const onSubmitComment = useCallback(() => { console.log(id, post.id, commentText); dispatch({ type: ADD_COMMENT_REQUEST, data: { content: commentText, postId: post.id, userId: id }, }); }, [commentText, id]); return ( <> <Form onFinish={onSubmitComment}> <Form.Item style={FormItem}> <Input.TextArea rows={4} value={commentText} onChange={onChangeCommentText} /> <Button style={ButtonStyle} type="primary" htmlType="submit" loading={addCommentLoading} > 게시 </Button> </Form.Item> </Form> </> ); }; CommentForm.propTypes = { post: PropTypes.object.isRequired, }; export default CommentForm; CommentEditForm.js는 아래와 같습니다 ... const { TextArea } = Input; const CommentEditForm = ({ post }) => { const dispatch = useDispatch(); const id = useSelector((state) => state.user.me?.id); const [editText, setEditText] = useState(''); const [commentEditMode, setCommentEditMode] = useState(false); const onReviseCommentText = useCallback((e) => { setEditText(e.target.value); }); const { reviseCommentLoading } = useSelector((state) => state.post); const onReviseComment = useCallback(() => { dispatch({ type: REVISE_COMMENT_REQUEST, data: { content: editText, PostId: post.id, UserId: id, }, }); }, [editText, id]); const onClickReviseComment = useCallback(() => { setCommentEditMode(true); }); const onCancelReviseComment = useCallback(() => { setCommentEditMode(false); }, []); return ( <div> {commentEditMode ? ( <> <TextArea value={editText} onChange={onReviseCommentText} /> <Button.Group> <Button loading={reviseCommentLoading} onClick={onReviseComment}>수정</Button> <Button type="danger" onClick={onCancelReviseComment}>취소</Button> </Button.Group> </> ) : ( <List header={`${post.Comments.length}개의 댓글`} itemLayout="horizontal" dataSource={post.Comments || []} renderItem={(item) => ( <li> <Comment actions={[ <div style={{ fontSize: '13px', marginRight: '10px' }}> {moment(item.createdAt).format('MM.DD HH:mm')} </div>, <span style={{ fontSize: '13px' }} onClick={onClickReviseComment}> 수정하기 </span>, ]} author={item.User.nickname} avatar={<Link href={`/user/${item.User.id}`} prefetch={false}><a><Avatar>{item.User.nickname[0]}</Avatar></a></Link>} content={item.content} /> )} /> )} </div> ); }; CommentEditForm.propTypes = { post: PropTypes.object.isRequired, }; export default CommentEditForm; 게시글 수정때와 유사하게 컴포넌트를 만들었는데, 이렇게 만들고 comment를 열려고 하면 이런 오류가 출력됩니다. post.Comments가 undefined라는 것인데, postCard.js은 index.js로부터 post를, CommentEditForm은 postCard.js로부터 post를 전달 받고 있어 index.js -> PostCard.js -> CommentEditForm 이렇게 2개 계층을 걸쳐 post를 전달받고 있기 때문에 이런 문제가 발생하는 것일까요?
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
로그인 관련 문제
안녕하세요 제로초 선생님. 분명 사이트에 얼마 전까지 로그인 하는데에서 문제가 발생한 적은 없었는데 무슨 코드를 잘못 건든건지 갑자기 로그인에 있어서 문제가 발생하고 있습니다. 위와 같이 LOG_IN_REQUEST와 LOG_IN_SUCCESS는 정상적으로 출력되는데, 로그인이 되지 않은 화면이 출력됩니다. 처음 로그인을 시도할 때는 첫 번째 사진이, 로그인이 되지 않아 다시 로그인을 시도할 경우 2번째 사진과 같은 network 창이 출력됩니다. 정확히 기억은 안나지만 Preflight는 CORS와 관련됐던걸로 기억하는데 서버 쪽에서 무언가 차단하고 있는 것일까요?
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
안녕하세요 제로초님
https://github.com/nolgazz12/zerochoStudy 로그인 무한로딩 문제로 코딩의 진전을 하지 못하고 있습니다. 혹시 해당 에러가 발생하는데 원인을 알 수 있을까요?
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
onClick 파라메터 바인드 질문드립니다.
// button onClick시.. () => onCancel(item.id) const onCancel = (item) => { console.log(item) dispatch({ type: UNFOLLOW_REQUEST, data: item }) } // button onClick시.. onCancel(item.id) const onCancel = (item) => () => { console.log(item) dispatch({ type: UNFOLLOW_REQUEST, data: item }) } 고차 함수 이용해서 파라메터 전달 및 바인드가 나와서 질문드립니다. 위 방법과 아래 방법의 차이가 있을까요 ... ?
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
로그아웃 시 궁금한 점이 하나 있습니다.
안녕하세요! 강의 수강중에 궁금한 점이 있어서 질문 드립니다! 제로초님 화면에서는 로그아웃할때 아이디, 비밀번호칸에 그대로 로그인시에 입력한 데이터가 남아있는데 저는 로그아웃하면 빈칸이어서.. 혹시 제가 잘못따라한것일까요?.. 돌려보면서 비교해봤는데 차이가 없는거 같아서 질문드립니다!
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
최적화 질문 있습니다.
안녕하세요! 항상 좋은 강의 감사드립니다! 질문드릴 것이 한가지 있는데 제가 아직 최적화에대한 개념이 헷갈립니다. {{}} 같은 식으로 하면 리랜더링을 해서 최적화면에서 좋지 않다고 하셨는데 이번 강의 FollowList.js파일안에서 {{}}들을 여러개 사용하셨는데 이것은 굳이 최적화 고려 안하신것인가요??아니면 나중에 제가 따로 Hooks같은걸로 추가적으로 고민해볼 부분인가요??
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
체크 박스 체크가 무족건 체크로 되는 현상좀 봐주세요
드래그앤 드롭으로 파일 업로드를 구현하기 위해react-dropzone 모듈을 사용해 구현 중인데요 드래그앤 드롭하자마자 무조건 체크 박스가 checked에 매핑된 함수와 상관없이 true 로 설정되는데 이걸 어떻게 고쳐야 될까요? 코드 샌드 박스:https://codesandbox.io/s/recursing-dawn-i5t0g https://codesandbox.io/s/recursing-dawn-i5t0g?fbclid=IwAR1kZq9NCKe13m5dBiZHTaeIiuAMIVyw5Lm4WD4owBUqotZopRHQC6pNqjE https://codesandbox.io/s/recursing-dawn-i5t0g github:https://github.com/node-hyun/file-attach-dropzone
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
nginx + https 적용하기 (front) 질문드립니다.
인강에 나온 내용대로 진행하면 아래와같은오류가나옵니다그래서 검색하다가 제로초님 블로그를 발견했고 https://www.zerocho.com/category/NodeJS/post/5ef450a5701d8a001f84baeb위 링크 제로초님 블로그에 있는 기존방식은 동작하지않아서 snap & nginx 방식으로 진행했고 질문드립니다. snap과 nginx 방식을참고해서 블로그에 있는코드에서 도메인만 nodebird.com -> donghwi-reactbird.shop으로 변경하였습니다 sudo certbot --nginx를 블로그 보고 입력해보았는데 snap과 nginx 방식으로 진행해보았는데 아래와 같은 오류가 발생합니다
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
안녕하세요 제로초님 프론트엔드 개발 관련 질문이 생겨 질문남깁니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 제로초님 우선 강의 내용과는 조금 동 떨어져있는 질문일 수 있어 사과말씀드립니다.. 사용자 인터뷰(10명정도)를 진행하고 이들의 피드백에 따라 UI/UX를 개선하면 이는 어찌보면 단편적인 정보로 UI UX를 개선한 것이 되지않습니까? 만약 이 경우, 사용자 인터뷰에 따라 UI UX를 개선하게 된다면 이는 너무 단편적인 것이 아니냐는 질문에 어떻게 답변을 해야할까요? 어떻게 생각하시는지 궁금합니다.
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
빌드 에러 질문입니다.
npm run build하면 이런 에러가뜨는데 도통ㅇ 머가문젠지 모르겠습니다..ㅠㅠ stringify 를 쓰면 나는 에러같은데 저는 안쓰고있는데 이러네요..
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
eslint
저는 왜 제로초님처럼 didpatch가 없는 걸 잡아 주지않을까요?.. 느낌이 recommended 했던때랑 비슷한거 같아요.. 확장 프로그램으로는 Eslint, Prettier-eslint 깔려있어요 밑에는 제 파일들 입니다. <eslint> { "parser": "babel-eslint", "parserOptions": { "ecmaVersion": 2021, "sourceType": "module", "ecmaFeatures": { "jsx": true }, "env": { "browser": true, "node": true, "es6": true }, "extends": [ "airbnb", "plugin:prettier/recommended" ], "plugins" : [ "import", "react-hooks", "prettier" ], "rules": { "prettier/prettier": "error", "jsx-a11y/label-has-associated-control": "off", "jsx-a11y/anchor-is-valid": "off", "no-console": "off", "no-underscore-dangle": "off", "react/forbid-prop-types": "off", "react/jsx-filename-extension": "off", "react/jsx-one-expression-per-line": "off", "object-curly-newline": "off", "linebreak-style": "off", "no-param-reassign": "off" } } } <package.json> { "name": "react-nodebird-front", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "dev": "next" }, "author": "", "license": "MIT", "dependencies": { "@ant-design/icons": "^4.6.2", "antd": "^4.16.6", "axios": "^0.21.1", "next": "^10.2.3", "next-redux-wrapper": "^7.0.2", "prop-types": "^15.7.2", "react": "^17.0.2", "react-dom": "^17.0.2", "react-hook-form": "^7.11.0", "react-redux": "^7.2.4", "react-slick": "^0.28.1", "redux": "^4.1.0", "redux-devtools-extension": "^2.13.9", "redux-saga": "^1.1.3", "styled-components": "^5.3.0" }, "devDependencies": { "babel-eslint": "^10.1.0", "eslint": "^7.30.0", "eslint-config-airbnb": "^18.2.1", "eslint-config-prettier": "^8.3.0", "eslint-plugin-import": "^2.23.4", "eslint-plugin-jsx-a11y": "^6.4.1", "eslint-plugin-prettier": "^3.4.1", "eslint-plugin-react": "^7.24.0", "eslint-plugin-react-hooks": "^4.2.0", "prettier-eslint": "^13.0.0" } } <setting.json> { "javascript.updateImportsOnFileMove.enabled": "always", "editor.wordWrap": "on", "workbench.preferredLightColorTheme": "Dracula Soft", "workbench.iconTheme": "material-icon-theme", "javascript.preferences.quoteStyle": "single", "typescript.preferences.quoteStyle": "single", "liveServer.settings.donotShowInfoMsg": true, "editor.fontSize": 17, "files.autoSaveDelay": 500, "editor.mouseWheelZoom": true, "liveServer.settings.fullReload": true, "editor.tabSize": 2, "javascript.format.enable": false, "workbench.sideBar.location": "right", "explorer.confirmDelete": false, "explorer.confirmDragAndDrop": false, "terminal.integrated.tabs.enabled": true, "editor.accessibilitySupport": "off", "eslint.alwaysShowStatus": true, "eslint.workingDirectories": [ { "mode": "auto" } ], "window.zoomLevel": 1, "workbench.colorTheme": "Default Light+", "files.autoSave": "afterDelay", "[json]": { "editor.quickSuggestions": { "strings": true }, "editor.suggest.insertMode": "replace" } }
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
프론트 서버에서 빌드시 react-dom이 없어서 빌드 실패가 뜨는데...
Failed to compile. ModuleNotFoundError: Module not found: Error: Can't resolve 'react-dom' in '/home/ubuntu/react-nodebird/front/node_modules/next/dist/client' 이렇게 뜨길래 프론트 서버에서 npm i react-dom 하고 빌드 하니까 되긴 됐는데 괜찮겠죠? 로컬에 먼저 npm i react-dom하고 깃헙에 푸시하고 aws에서 풀 받아서 하려했는데 로컬에서 npm i react-dom하니까 이미 next 내장인가보더라고요. 로컬과 서버가 싱크 안 맞아도 괜찮겠죠..?
- 미해결[리뉴얼] React로 NodeBird SNS 만들기
현재 도메인에 나오는 post 삭제하는 방법 질문입니다.
제로초님 안녕하세요 친절한 설명덕분에 감사하게 강의를 성공적으로 따라갈 수 있었습니다배포한 이후에 post들을 싹 삭제하고 싶으면 혹시 어떻게 삭제해야하나요??aws에 들어가서 어떻게 삭제해야하는지 혹시 여쭤봐도될까요?기존에 로컬에서 진행할때는 mySql때는 Workbench에 들어가서 Post테이블 싹 지우면 됐는데싹 지우고 싶은이유는 삭제버튼을 눌러서 삭제하면 해당 id는 빈상태로 나오기 때문입니다.또한 제가 아닌 다른사람이 이상한글을 썼을때 삭제를 하기 위해서 다른사람이 쓴 글도 삭제하고싶기때문입니다.