33,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
확인에서 넘어가지 않을 때.. 어떡하면 좋을까요? (해결)
해당 강의 질문 글들에서 제시됐던 솔루션 방식들을 모두 사용해봤지만, 여전히 '확인'을 누르면 반응이 없습니다. 마지막으로 모든 아이피 허용 변경 후 아이디를 새로 만들어도 똑같네요... 1. '확인'을 누를 때 반응은 없지만 'uploads' 폴더 안에 사진이 저장되긴 합니다. 2. 공란이 있는 상태에서 '확인'을 누르면 반응은 없지만 1번처럼 사진은 저장이 됩니다. 뭐가 문제일까요... 모든 경우의 수와 코드 하나하나 비교도 해봤습니다ㅠ
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
TypeError: Cannot read property 'prototype' of undefined 인분들 참고 사항 및 궁금한 사항 질문 드립니다
위 같은 에러가 떴을 때, FileUpload.js 파일 상단 import { response } from 'express'; 부분을 삭제하면 정상적으로 작동하게 됩니다. Q. 본문에서는 사용되지 않았지만, 임포트 하는 것만으로도 에러가 나는 이유는 무엇일까요? 비슷한 예로 사용되지 않는 axios를 임포트한 경우에도 비슷한 에러가 나더라고요
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
깃허브 커밋
안녕하세요 강사님.. 강의들으면서 클론코딩하고 혼자 응용하면서 실습해보려고 다른 프로젝트를 작업하고 있었는데요, 방금 커밋하고 커밋로그를 보는데 지금까지 강사님 레포지토리에 커밋을 하고 있었습니다.. 너무 깜짝놀라고 부끄러워서 해당하는 저의 레포지토리를 바로 삭제해버렸는데, 이렇게 되면 원본(강사님 레포지토리)에 아무 문제가 없으며 아무도 제 커밋내용을 볼 수 없는건가요? 전자는 문제가 없다는 걸 알겠는데 후자는 어떻게 검색을 해야할지 모르겠어서 여쭤봅니다..!
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
선생님 ㅠㅠ 배포 관련 질문있습니다..! 답변부탁드려요 ㅠㅠ
질문이 있습니다. heroku 배포 관련입니다. 꼼꼼히 공부하다보니 이런저런 궁금증이 많이 생기고 추리고 추려 질문해봅니다 ㅠㅠ.. 첫번째로 아래 첫번째 사진과 같이 배포 상태일때 static을 해주는 이유가 궁금합니다. 1. 자바스크립트와 css파일을 꼭 static으로 명시해줘야 heroku가 접근가능한건가요? static은 단순히 URL을 통해 접근할 수 있는 것들을 선언하는 걸로 알고있는데 경우가 다른거같아서요.. 2. 그리고 경로가 현재 서버폴더인데 ../client/bulid 인줄알고있는데 저렇게 해도 되는 이유가 궁금합니다..! 3. 그리고 두번째 사진에서 질문드리면 궁금한게 heroku는 heroku-postbuild 라는 저 script를 보고 저기가 서버폴더라고 인식하는건가요? client와 server 2개의 폴더가 있는데 server 폴더를 인식한게 궁금합니다.. 4. 마지막으로 heroku-postbuild에서 저렇게 선언을 해놓으면 build를 안한 상태로 github에 올려놔도 heroku가 저 스크립트를 실행함으로써 빌드를 하고 그에 맞는 접근을 한다고 이해했는데 맞나요? 그리고 client는 npm install 작업을 해주는데 서버는 왜 선언이 없는지 궁금합니다..
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
선생님 장바구니 관련 질문있습니다.
User 모델 안에 장바구니가 있잖아요? 상황이, Post 하나를 유저가 장바구니에 담았습니다. 이때, 그 Post가 삭제가되면 유저의 장바구니안에는 해당 Post가 그대로 남아있는데 실제 서비스에서는 문제가 될것같아요., 이런 경우 어떻게 해야할까요? Post가 삭제될시 다른 유저의 장바구니 안에 들어있는 그 Post도 삭제시켜주고싶습니다.
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
저 역시도 다른 분들처럼 확인 버튼 누르면 진행이 안됩니다.
UploadProductPage.js:59 Uncaught TypeError: Cannot read property '_id' of undefined at submitHandler (UploadProductPage.js:59) at HTMLUnknownElement.callCallback (react-dom.development.js:188) at Object.invokeGuardedCallbackDev (react-dom.development.js:237) at invokeGuardedCallback (react-dom.development.js:292) at invokeGuardedCallbackAndCatchFirstError (react-dom.development.js:306) at executeDispatch (react-dom.development.js:389) at executeDispatchesInOrder (react-dom.development.js:414) at executeDispatchesAndRelease (react-dom.development.js:3278) at executeDispatchesAndReleaseTopLevel (react-dom.development.js:3287) at forEachAccumulated (react-dom.development.js:3259) at runEventsInBatch (react-dom.development.js:3304) at runExtractedPluginEventsInBatch (react-dom.development.js:3514) at handleTopLevel (react-dom.development.js:3558) at batchedEventUpdates$1 (react-dom.development.js:21871) at batchedEventUpdates (react-dom.development.js:795) at dispatchEventForLegacyPluginEventSystem (react-dom.development.js:3568) at attemptToDispatchEvent (react-dom.development.js:4267) at dispatchEvent (react-dom.development.js:4189) at unstable_runWithPriority (scheduler.development.js:653) at runWithPriority$1 (react-dom.development.js:11039) at discreteUpdates$1 (react-dom.development.js:21887) at discreteUpdates (react-dom.development.js:806) at dispatchDiscreteEvent (react-dom.development.js:4168) submitHandler @ UploadProductPage.js:59 callCallback @ react-dom.development.js:188 invokeGuardedCallbackDev @ react-dom.development.js:237 invokeGuardedCallback @ react-dom.development.js:292 invokeGuardedCallbackAndCatchFirstError @ react-dom.development.js:306 executeDispatch @ react-dom.development.js:389 executeDispatchesInOrder @ react-dom.development.js:414 executeDispatchesAndRelease @ react-dom.development.js:3278 executeDispatchesAndReleaseTopLevel @ react-dom.development.js:3287 forEachAccumulated @ react-dom.development.js:3259 runEventsInBatch @ react-dom.development.js:3304 runExtractedPluginEventsInBatch @ react-dom.development.js:3514 handleTopLevel @ react-dom.development.js:3558 batchedEventUpdates$1 @ react-dom.development.js:21871 batchedEventUpdates @ react-dom.development.js:795 dispatchEventForLegacyPluginEventSystem @ react-dom.development.js:3568 attemptToDispatchEvent @ react-dom.development.js:4267 dispatchEvent @ react-dom.development.js:4189 unstable_runWithPriority @ scheduler.development.js:653 runWithPriority$1 @ react-dom.development.js:11039 discreteUpdates$1 @ react-dom.development.js:21887 discreteUpdates @ react-dom.development.js:806 dispatchDiscreteEvent @ react-dom.development.js:4168 react-dom.development.js:327 Uncaught TypeError: Cannot read property '_id' of undefined at submitHandler (UploadProductPage.js:59) at HTMLUnknownElement.callCallback (react-dom.development.js:188) at Object.invokeGuardedCallbackDev (react-dom.development.js:237) at invokeGuardedCallback (react-dom.development.js:292) at invokeGuardedCallbackAndCatchFirstError (react-dom.development.js:306) at executeDispatch (react-dom.development.js:389) at executeDispatchesInOrder (react-dom.development.js:414) at executeDispatchesAndRelease (react-dom.development.js:3278) at executeDispatchesAndReleaseTopLevel (react-dom.development.js:3287) at forEachAccumulated (react-dom.development.js:3259) at runEventsInBatch (react-dom.development.js:3304) at runExtractedPluginEventsInBatch (react-dom.development.js:3514) at handleTopLevel (react-dom.development.js:3558) at batchedEventUpdates$1 (react-dom.development.js:21871) at batchedEventUpdates (react-dom.development.js:795) at dispatchEventForLegacyPluginEventSystem (react-dom.development.js:3568) at attemptToDispatchEvent (react-dom.development.js:4267) at dispatchEvent (react-dom.development.js:4189) at unstable_runWithPriority (scheduler.development.js:653) at runWithPriority$1 (react-dom.development.js:11039) at discreteUpdates$1 (react-dom.development.js:21887) at discreteUpdates (react-dom.development.js:806) at dispatchDiscreteEvent (react-dom.development.js:4168) submitHandler @ UploadProductPage.js:59 callCallback @ react-dom.development.js:188 invokeGuardedCallbackDev @ react-dom.development.js:237 invokeGuardedCallback @ react-dom.development.js:292 invokeGuardedCallbackAndCatchFirstError @ react-dom.development.js:306 executeDispatch @ react-dom.development.js:389 executeDispatchesInOrder @ react-dom.development.js:414 executeDispatchesAndRelease @ react-dom.development.js:3278 executeDispatchesAndReleaseTopLevel @ react-dom.development.js:3287 forEachAccumulated @ react-dom.development.js:3259 runEventsInBatch @ react-dom.development.js:3304 runExtractedPluginEventsInBatch @ react-dom.development.js:3514 handleTopLevel @ react-dom.development.js:3558 batchedEventUpdates$1 @ react-dom.development.js:21871 batchedEventUpdates @ react-dom.development.js:795 dispatchEventForLegacyPluginEventSystem @ react-dom.development.js:3568 attemptToDispatchEvent @ react-dom.development.js:4267 dispatchEvent @ react-dom.development.js:4189 unstable_runWithPriority @ scheduler.development.js:653 runWithPriority$1 @ react-dom.development.js:11039 discreteUpdates$1 @ react-dom.development.js:21887 discreteUpdates @ react-dom.development.js:806 dispatchDiscreteEvent @ react-dom.development.js:4168 xhr.js:178 GET http://localhost:3000/api/users/auth 504 (Gateway Timeout) dispatchXhrRequest @ xhr.js:178 xhrAdapter @ xhr.js:12 dispatchRequest @ dispatchRequest.js:52 Promise.then (async) request @ Axios.js:61 Axios.<computed> @ Axios.js:76 wrap @ bind.js:9 auth @ user_actions.js:31 (anonymous) @ auth.js:14 commitHookEffectListMount @ react-dom.development.js:19731 commitPassiveHookEffects @ react-dom.development.js:19769 callCallback @ react-dom.development.js:188 invokeGuardedCallbackDev @ react-dom.development.js:237 invokeGuardedCallback @ react-dom.development.js:292 flushPassiveEffectsImpl @ react-dom.development.js:22853 unstable_runWithPriority @ scheduler.development.js:653 runWithPriority$1 @ react-dom.development.js:11039 flushPassiveEffects @ react-dom.development.js:22820 performSyncWorkOnRoot @ react-dom.development.js:21737 (anonymous) @ react-dom.development.js:11089 unstable_runWithPriority @ scheduler.development.js:653 runWithPriority$1 @ react-dom.development.js:11039 flushSyncCallbackQueueImpl @ react-dom.development.js:11084 flushSyncCallbackQueue @ react-dom.development.js:11072 unbatchedUpdates @ react-dom.development.js:21909 legacyRenderSubtreeIntoContainer @ react-dom.development.js:24757 render @ react-dom.development.js:24840 ./src/index.js @ index.js:20 __webpack_require__ @ bootstrap:784 fn @ bootstrap:150 1 @ serviceWorker.js:135 __webpack_require__ @ bootstrap:784 checkDeferredModules @ bootstrap:45 webpackJsonpCallback @ bootstrap:32 (anonymous) @ main.chunk.js:1 createError.js:16 Uncaught (in promise) Error: Request failed with status code 504 at createError (createError.js:16) at settle (settle.js:17) at XMLHttpRequest.handleLoad (xhr.js:61) createError @ createError.js:16 settle @ settle.js:17 handleLoad @ xhr.js:61 Promise.then (async) (anonymous) @ auth.js:14 commitHookEffectListMount @ react-dom.development.js:19731 commitPassiveHookEffects @ react-dom.development.js:19769 callCallback @ react-dom.development.js:188 invokeGuardedCallbackDev @ react-dom.development.js:237 invokeGuardedCallback @ react-dom.development.js:292 flushPassiveEffectsImpl @ react-dom.development.js:22853 unstable_runWithPriority @ scheduler.development.js:653 runWithPriority$1 @ react-dom.development.js:11039 flushPassiveEffects @ react-dom.development.js:22820 performSyncWorkOnRoot @ react-dom.development.js:21737 (anonymous) @ react-dom.development.js:11089 unstable_runWithPriority @ scheduler.development.js:653 runWithPriority$1 @ react-dom.development.js:11039 flushSyncCallbackQueueImpl @ react-dom.development.js:11084 flushSyncCallbackQueue @ react-dom.development.js:11072 unbatchedUpdates @ react-dom.development.js:21909 legacyRenderSubtreeIntoContainer @ react-dom.development.js:24757 render @ react-dom.development.js:24840 ./src/index.js @ index.js:20 __webpack_require__ @ bootstrap:784 fn @ bootstrap:150 1 @ serviceWorker.js:135 __webpack_require__ @ bootstrap:784 checkDeferredModules @ bootstrap:45 webpackJsonpCallback @ bootstrap:32 (anonymous) @ main.chunk.js:1 우선 다른분들도 나왔던 _id undefined가 계속해서 나오는데 해결법을 1) Button -> button으로도 바꿔봤는데 실패 2) type -> htmlType으로도 해봤는데 실패 3) mongodb에서 네트워크 접속도 0.0.0.0으로 모든 아이피 접속으로 바꿔보고 데이터베이스 접속도 바꿨는데 실패 어떻게 해야 이 문제를 해결할 수 있을까요? https://github.com/jiwoongKo/temporaryReact 해당 코드에 대해 올립니다.
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
Suspense 컴포넌트만 App.js에 있는데..
안녕하세요, App.js 을 보면 Provider로 store를 연결시켜주는 코드가 없는데 리덕스 스토어를 리액트 내에서 사용 가능한지 여쭤보고싶습니다. function App() { return ( <Suspense fallback={<div>Loading...</div>}> <NavBar /> <div style={{ paddingTop: '69px', minHeight: 'calc(100vh - 80px)' }}> <Switch> <Route exact path='/' component={Auth(LandingPage, null)} /> <Route exact path='/login' component={Auth(LoginPage, false)} /> <Route exact path='/register' component={Auth(RegisterPage, false)} /> <Route exact path='/product/upload' component={Auth(UploadProductPage, true)} /> <Route exact path='/product/:productId' component={Auth(DetailProductPage, null)} /> <Route exact path='/user/cart' component={Auth(CartPage, true)} /> </Switch> </div> <Footer /> </Suspense> ); } Supense 컴포넌트가 비동기작업을 해주며, 로딩시 로딩화면을 보여주는 컴포넌트역할로 알고있는데, Provider와 같이 사용해도 되는걸까요?
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
백앤드 이미지 업로드와 관련한 몽구스 DB에러에 대하여 질문합니다.
따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기 12강 'multer를 이용하여 이미지 저장' 5:50초경 이미지가 몽구스 저장되었는지를 확인하기 위해 콘솔창을 켰는데, 504에러만 뜹니다. 몽구스 db가서 아이피 추가 등 인터넷에 나와있는 대부분의 해결책으로 시험해봤는데 되지 않습니다. 몽구스 디비와의 연결은 된거 같은데, 왜 이런지 모르겠습니다. 이거때문에 진도가 나가지 않습니다.
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
props로 devtools에서 정보가져오기
cartPage에서 react-devtools에 있는 정보를 가져올때 props.user.userData이렇게 가져오잖아요 그리고 CartPage에서 UserCardBlock에 정보를 넘겨줄때products={props.user.cartDetail} 이렇게 넘겨주고 UserCardBlock에서 props.products 이렇게 정보를 받는데, 제가 그래서 UserCardBlock 에서 props.user.userData이렇게 콘솔에 찍어 봤는데 정의되지 않았다고 뜨는데.. 왜이런걸까요>??
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
5:40 404 에러 도와주세요 ㅠㅠ
좋은 강의 항상 감사드립니다. 오타때문인가 싶어 강의도 돌려보고 올라와있는 질문들 다 읽어보았는데도 끝내 해결하지 못해 이렇게 질문드립니다. 일단 위 사진은 콘솔 창에서의 에러이구요... 소스코드 첨부하겠습니다. FileUpload.js import React from "react"; import Dropzone from "react-dropzone"; import { Icon } from "antd"; import axios from "axios"; function FileUpload() { const dropHanler = (files) => { let formData = new FormData(); const config = { header: { "content-type": "multipart/form-data" }, }; formData.append("file", files[0]); axios.post("/api/product/image", formData, config).then((response) => { if (response.data.success) { console.log(response.data); } else { alert("파일을 저장하는데 실패했습니다."); } }); }; return ( <div style={{ display: "flex", justifyContent: "space-between" }}> <Dropzone onDrop={dropHanler}> {({ getRootProps, getInputProps }) => ( <div style={{ width: 300, height: 240, border: "1px solid lightgray", display: "flex", alignItems: "center", justifyContent: "center", }} {...getRootProps()} > <input {...getInputProps()} /> <Icon type="plus" style={{ fontSize: "3rem " }} /> </div> )} </Dropzone> </div> ); } export default FileUpload; product.js const express = require("express"); const router = express.Router(); const multer = require("multer"); //================================= // Product //================================= var storage = multer.diskStorage({ // destination: 파일이 어디에 저장되는지 알려줌 destination: function (req, file, cb) { cb(null, "uploads/"); }, filename: function (req, file, cb) { cb(null, `${Date.now()}_${file.originalname}`); }, }); var upload = multer({ storage: storage }).single("file"); router.post("/image", (req, res) => { // 가져온 이미지를 저장해주면 된다 upload(req, res, (err) => { if (err) { return res.json({ success: false, err }); } return res.json({ success: true, filePath: res.req.file.path, fileName: res.req.file.filename, }); }); }); module.exports = router; index.js(강의에서 손댄 부분만) app.use("/api/users", require("./routes/users")); app.post("/api/product", require("./routes/product")); //use this to show the image you have in node js server to client (react js) //https://stackoverflow.com/questions/48914987/send-image-path-from-node-js-express-server-to-react-client app.use("/uploads", express.static("uploads")); 몽고db연결도 잘 되었고, 별 다른 에러가 뜨지 않아 터미널 로그는 따로 첨부하지 않았습니다. 혼자 해결해보려고 3시간 붙잡다 이렇게 질문드립니다... ㅠㅠ 꼭 답변 부탁드리겠습니다.. ㅠㅠ
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
더보기 버튼 질문있습니다.
삭제된 글입니다
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
1:10 익스텐션 궁금합니다
저는 prettier 쓰는데 저장시 자동정렬시키거든요.. 강사님처럼 띄어쓰기(?) 한번으로 자동정렬 어떻게 하나요..?
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
질문입니다.
제가 유튜브에서 들었던 boiler-plate와 boilerplate-mern-stack과 코드가 차이가 나는데 혹시 이부분에 대한 강의는 원래 없는건가요??
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
MongoDB의 USD설정을 KRW로 바꿀 수 있나요??
안녕하세요 선생님, 열심히 잘 보고 따라하고 있습니다! 나름의 수정작업을 곁들이며 하는 중인데요. 혹시 MongoDB에서 지원하는 달러단위를 원화로 바꿀 수 있는 방법이 있을까요?? MongoDB Docs에도 monetary usage 관련 사용법만 나오고, 전환법이나 다른 방법에 대해 나오지는 않아서요! 늘 감사합니다! :)
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
이미지 삽입 질문!
안녕하세요! 이미지 저장 시 로컬에서 multer로 하잖아요. heroku 배포시 aws-s3 안써도 로컬에서 data 폴더를 만든채 배포하면 path 모듈써서 __dirname과 조합해서 data안에 이미지 저장할수있는거 맞나요? 로컬이 윈도우라면 배포했을때 linux 경로 다 고려해야하나요? path로 다 해결되는지 궁금합니다,, ---------------------------------------------------------------------------------------------------------- 예를 들어 제가 현재 정체되어있는 부분을 말씀드리자면, path.join(__dirname,'../../client/src/components/views/Counsel/a.img') 이렇게 했을때 윈도우인 로컬에선 C:\Users\문지호\Desktop\WebProject\Web_Capston\client\src\components\views\Counsel\a.img' 배포했을때는 /app/client/src/components/views/Counsel/a.img 이렇게 경로가 확인되고 heroku log를 볼때 app이 최상위 디렉토리 인거같습니다. 일단 로컬에선 잘 작동하는데 heroku에선 안되는것 같습니다. ---------------------------------------------------------------------------------------------------------- heroku를 추가로 찾아보니 동적파일생성이 안되는거같더라구요.. 그럼 임시저장할 곳이 필요한데 aws s3밖에 답이 없는건가요?
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
몽고디비 접속도 에러가 나네요
Build New Cluster 누르면 There was a problem fetching your clusters. 라고 뜹니다. 강의 내용과 현재 몽고디비사이트가 너무 다릅니다
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
로그인 시, set-cookie 가 response 에 들어가 있는데, redirect 후 cookie 정보가 없습니다
안녕하세요. 로그인 성공까지는 back-end 에서 확인 되었지만, page 가 redirect되어 로그인이 되지 않은것으로 인식 됩니다. {isAuth: false, error:true} 의 json 값이 들어오길래, 네트워크 탭과 어플리케이션 탭으로 확인해 보았더니 쿠키는 set-cookie로 잘 들어오는 것은 확인 되었지만, 그다음 /auth 에서는 쿠키 정보가 넘어가지 않는 것 같습니다. 쿠키 관련해서는 건드린게 없습니다만, 무엇이 잘못 되었는지 유추할 수 있는 방법을 알려주시면 감사하겠습니다
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
디스패치후 .then에 관해서 질문 있습니다
디스패치후 .then으로 데이터를 받아오시는데 리덕스 state에 저장하는 경우와 , then을 사용해서 데이터를 받아올때의 기준점이 궁금해용! 어떤분들은 디스패치해서 액션함수를 실행시켜서 리듀스에서 전체 state에 저장시켜준후 그 정보를 활용하는 한편, 강사님은 디스패치로 액션함수를 실행시켜준후, then을 이용해서 사용해주십니다. 제가 느끼기에 전자가 후자보다 손이 더 많이가고 코드가 복잡해진다?고 느껴지지만, state를 리덕스에서 관리 할 수가 있어서 나중에 유지보수에서 편리함이 있지않을까? 라고 생각하고있는데용.. 애송이다보니까 제 생각이 틀린것같아서요 ㅠㅠ 혹시 강사님만의 기준점이 있을까요?
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
카트 페이지에서 카트에 넣은 품목이 안뜨는 경우가있습니다.
총 두개를 넣었는데 하나만 뜨는경우가 자주있습니다. 안떳을때 새로고침을 해주면 제대로 뜨고요. 이런 경우 어떤걸 의심하고 어떻게 접근해야할까요?
- 미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
Add to Cart 버튼을 눌렀을때 이미..
안녕하세요! Add to Cart 버튼을 눌러서 카트에 담았을때 이미 quantity 카운터가 1 이상으로 바뀌는데 getCartItems 액션 함수중 아래 코드를 굳이 이용해야하는지 궁금합니다 userCart.forEach((cartItem) => { response.data.product.forEach((productDetail, index) => { if (cartItem.id === productDetail._id) { response.data.product[index].quantity = cartItem.quantity; } }); }); 그래서 코드를 지우고 실행해 봤더니 quantity 가 모습을 감추던데.. 왜 그런것인지 생각하다가 호흡곤란이 올 것 같습니다.. 제가 생각하기엔 이미 Add to Cart버튼을 눌러, 서버에서 quantity를 추가시켜주거나 1을 주었고. 카트페이지에서는 user.cart에 있는 것들을 불러와주면 그안에 quantity도 있어야하는거 아닌가..라고 생각을 해봤는데 혹시 제가 틀린 것 일까요? 제 질문이 너무 애매모호하고 무슨 소리인지 모르겠다면 🥕을 댓글에 달아주세요! 감사합니다,,