-
글쓴이글
-
2021년 5월 24일 12:37 #9665
breadlee참가자안녕하세요 선생님!
마지막 강의 'Node+Express 서버와 React 연동하기'를 보며 공부하고 있는데 질문이 있습니당!!
기존에 강의를 들으며 만들었던 shoes 쇼핑몰 (리액트)을 express로 서버 연동하기 위해
빈 에디터에 package.json, node_modules, server.js(코드는 강의와 똑같이 작성) 생성하고
기존에 만들었던 shoes쇼핑몰 리액트 전체 폴더를 통으로 복사해서 붙여넣었는데요!
Could not find a required file.
Name: index.htmlSearched in: C:\Users\내pc\Desktop\node+express\react-shop\public
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! react-shop@1.0.0 build:react-scripts build
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the react-shop@1.0.0 build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\내pc\AppData\Roaming\npm-cache\_logs\2021-05-23T17_02_02_558Z-debug.log이라고 자꾸 에러가 뜨고있습니다.
리액트 작업 내용을 그대로 복사해오면 안되는 건가요?
그래서 게시판에 저와 같은 문제를 겪는 질문이 있을까 찾아보다가
지는 질문 답변 내용에서, 기존 리액트 작업한데다가 서브파일로 server.js를 만들어도 된다고 하셔서
기존에 만든 shoes쇼핑몰 리액트 작업한곳에 server.js를 생성하여 코드를 강의와 똑같이 만들었습니다(express설치 완료)
다만, 강의와 진행 내용이 다르기 때문에(강의에서는 public을 만들어서 main.js를 생성) public은 만들지 않고
나머지는 똑같이 따라해봤습니다
그랬더니 터미널에
The build folder is ready to be deployed.
You may serve it with a static server:serve -s build
이렇게 떠서 제가
serve -s build << 이렇게 명령어를쳤더니
초록색 글씨로
Serving!
│ - Local: http://localhost:5000 │
│ - On Your Network: xxxxxxxx │이렇게 떴습니다
위의 local주소로 들어가면 제가 만들었던 shoes쇼핑몰이 정상적으로 뜹니다!
서버가 만들어진것 같은데.. 여기서 의문점은
제가 여기 server.js에다가 강의와 똑같이 만드느라
const express = require('express');
const path = require('path');
const app = express();const http = require('http').createServer(app);
http.listen(8080, function () {
console.log('listening on 8080')
});이렇게 쳤는데 왜 만들어진 서버는 8080이 아니라 5000인가요??
(추가로.. 5000서버주소로 들어가면 shoes쇼핑몰이 정상적으로 뜨는데, 다른건 다 되는데
장바구니담기 버튼을 누르면 cart페이지로 넘어가야 하는데 빈화면이 뜨고 있습니다 ㅠㅠ 어디서 어떻게 문제점을 찾아야 할지 모르겠어서 질문 드립니다 ㅠㅠ
main 페이지는 정상적으로 뜨고 모든 클릭이 정상적으로 이루어 지고 있습니다
detail페이지로도 잘 넘어가고 있으나 detail페이지에서 cart페이지로 넘어가는 과정에서 빈화면이 뜨고 있습니다 )
긴 질문 읽어주셔서 감사합니다
감사합니다!
2021년 5월 24일 14:13 #9670
codingapple키 마스터리액트에서 build한 html파일 경로를 잘못적은것 같은디요
express에서 html 파일을 보내줄 때 그 파일이 어딨는지 정확히 경로를 적어봅시다
그리고 서브파일이 아니라 서브폴더하나 만들고 거기다가 server.js 만들고 서버 프로젝트 시작해야 별일 없을걸요
-
글쓴이글
- 답변은 로그인 후 가능합니다.