inflearn logo
강의

講義

知識共有

フルスタックリアクトトイプロジェクト - REST, GraphQL (for FE開発者)

expressサーバーとjsonデータベースの作成

yarn run server 에러 발생

解決済みの質問

751

uoon lee

投稿した質問数 4

0

yarn 워크스페이스 구성하고 필요한 패키지를 설치했는데
nodemon ./src/index.js

위 커맨드 실행시 에러가 발생합니다. yarn 2 버전을 사용하고 있는데 버전 1로 다운그레이드 해도 동일한 현상이 발생하네요.. 의존성 관리에 문제가 있는 것 같은데 해결책이 있을까요? 폴더 구조는 강의와 동일합니다.

// package.json

{
"version": "1.0.0",
"name": "node-graphql",
"private": true,
"workspaces": [
"client",
"server"
],
"scripts": {
"frontend": "yarn workspace client start",
"server": "yarn workspace server start"
}
}

// server/package.json

{
"version": "1.0.0",
"name": "server",
"main": "index.js",
"type": "module",
"license": "MIT",
"dependencies": {
"cors": "^2.8.5",
"express": "^4.17.1",
"uuid": "^8.3.2"
},
"devDependencies": {
"nodemon": "^2.0.15"
},
"scripts": {
"start": "nodemon ./src/index.js"
}
}

 

에러 내용

(node:76305) ExperimentalWarning: The ESM module loader is experimental. internal/modules/run_main.js:54 internalBinding('errors').triggerUncaughtException( ^ Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'express' imported from /Users/iyuun/WebstormProjects/node-graphql/server/src/index.js Did you mean to import express-npm-4.17.1-6815ee6bf9-c4b470d623.zip/node_modules/express/index.js?

server 폴더에서 express 깔았는데도 그러네요..

에러 react rest-api graphql

回答 2

2

uoon lee

yarn pnp 사용했을 때 나타나는 에러인 것 같습니다. pnp module 시스템에서 esm을 지원하지 않아서 package.json에 "type": "module"을 추가해도 원하는 패키지를 찾을 수가 없네요.

관련 이슈: https://github.com/yarnpkg/berry/issues/638

.yarnrc.yml 파일에 

nodeLinker: node-modules

이렇게 설정해줘서 해결하긴 했는데 강의에는 관련 내용이 없는 걸 보니 pnp 사용을 안해서 그런 건지 궁금하네요.

1

jaenam

네, yarn 1.0 베이스에요. yarn berry 사용시에는 그런 문제가 있군요..

시시각각 변하는 라이브러리가 많아 일일이 대응하기가 힘든 측면이 있습니다.

양해 부탁드리고, 답변주신 내용은 강의노트에 추가해 놓겠습니다. 감사합니다!

0

jaenam

삭제된 글입니다

0

uoon lee

server/src/index.js 입니다!

import express from 'express';
import cors from 'cors';
import messagesRoute from './routes/messages.js'
import usersRoute from './routes/users.js'

const app = express();
app.use(express.urlencoded({ extended: true }))
app.use(express.json());

app.use(cors({
origin: 'http://localhost:3000',
credentials: true
}))

const routes = [...messagesRoute, ...usersRoute];

routes.forEach(({ method, route, handler}) => {
app[method](route, handler)
})

app.listen(8000, () => {
console.log('server listening on 8000..')
})

질문있습니다 !

0

132

2

sass 오류

0

173

1

does not match

0

162

2

프로젝트 배포

0

297

1

코드 똑같이 쳤는데 scss 적용이 안돼요 ㅠㅠ

0

744

1

scss 스타일 적용

0

478

2

yarn run client시 에러는 안 나는데 호스트가 열리질 않습니다 ㅠㅠ

0

430

1

무한 스크롤 관련 질문 드립니다.

1

511

2

props 를 넘겨줄 때 함수를 그대로 넘겨줄 때와 화살표 함수로 감싸서 넘겨줄 때의 차이가 궁금합니다 :)

0

454

1

getInitialProps 과 getServerSideProps에 대해서 질문드립니다!

0

1143

1

node-sass를 했을 때 에러가 발생합니다.

0

376

1

[소스 다운로드 안됩니다]

0

323

1

rendered HTML error 관련

2

2187

2

닉네임 부분이 잘못되어 있는 것 같습니다.

0

446

2

Typescript 질문드려요!

0

331

1

error 관련하여

1

289

1

질문이 있습니다!.

0

278

1

질문이 있습니다!

0

484

1

수정된 내용까지 확인했는데 에러가 납니다 ㅠ

1

303

2

React Hydration Error 가 나는 이유가 무엇일까요 ?;;

0

630

1

useRef를 선호하시는 이유가 궁금합니다!

1

792

1

react-query 4.0.0 버전에선 에러가 납니다

0

667

1

gql 백틱 안에 색깔 입혀지는 확장프로그램이 어떤건지 알 수 있을까요?

2

683

1

typeScript에 대한 질문을 어디다가 올려야할지 몰라서 여기다가 남깁니다!

0

301

1