inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

따라하며 배우는 노드, 리액트 시리즈 - 레딧 사이트 만들기(NextJS)(Pages Router)

Vote Entity

BaseEntity는 왜 ./Entity에서 import 해오나요?

해결된 질문

382

sharonhana12

작성한 질문수 2

0

안녕하세요, 강사님!

Entity 생성 시, BaseEntity를 Entity.ts에서 import하시는데 그 이유가 궁금합니다.

typeorm에서 바로 import해도 될 것 같은데, Entity.ts에서 import해오는 이유가 뭔지 잘 모르겠어서요!

nodejs docker typescript postgresql react 클론코딩 Next.js

답변 1

1

John Ahn

안녕하세요!

이 둘은 사실 다릅니다 ~

import {
  BaseEntity,
} from "typeorm";
import BaseEntity from './Entity';

위에 것이 typeorm에서 가져온 BaseEntity이며

아래에 있는 것은 Entity.ts에서 만들어준 Entity입니다.

그러니 아래에 있는 BaseEntity는

typeorm의 Base Entity + Entity 클래스에 새로 넣어준 것들까지 포함하게 됩니다.

감사합니다!

0

sharonhana12

안녕하세요, 강사님. 빠른 응답 감사합니다. 아직 이해가 명쾌하게 되지 않아서 꼬리 질문남깁니다.

 

Entity.ts 파일을 보면, 코드가 아래처럼 되어있는데

import { BaseEntity, CreateDateColumn, PrimaryGeneratedColumn, UpdateDateColumn } from "typeorm";

export default abstract class Entity extends BaseEntity {

@PrimaryGeneratedColumn()

id: number;

@CreateDateColumn()

createdAt: Date;

@UpdateDateColumn()

updatedAt: Date;

}

설명해주신 typeorm의 Base Entity + Entity 클래스에 새로 넣어준 것들까지 포함합니다. 이 부분은 이해했으나,

저는 export default abstract class Entity extends BaseEntity 이기 때문에, 모듈을 export 시, (BaseEntity가 아닌) Entity라는 이름으로 내보내야하는 것이 아닌가 생각했습니다.

 

일단 클래스 개념도 익숙치 않은데다가 추상클래스를 잘 모르기 때문에 이해를 잘 못하고 있는 것 같은데, 혹시 제가 어떤 부분을 놓치고 있는것인지 설명해주실 수 있으실까요? 혹은 관련 키워드 주시면 큰 도움이 될 것 같습니다! 거듭 감사합니다.

0

John Ahn

안녕하세요! 이거는 제가 네이밍을 혼란스럽게 해서 그런 것 같습니다 ㅎㅎ

export default로 했다면

import로 가져올 때 어떠한 이름으로 가져오든 export default 한 Entity를 가져오게 됩니다.

그러니 import Entity from './'으로 해도

=> class Entity를 가져오게 되며

import BaseEntity from './'을 해도

=> class Entity를 가져오게 되는 것입니다!

감사합니다!

헷갈리시면 다시 질문해 주시면 감사하겠습니다!!

0

sharonhana12

아하, 제가 export default에 대해서 제대로 모르고 있었네요. 늘 같은 이름으로만 내보내고 가져오다보니..ㅎㅎ 빠르고 친절한 답변 감사합니다! 강의 잘 듣고 있습니다. 좋은 한 주 보내세요 :)

+) 참고: export (export default 기본 내보내기는 어떤 이름으로도 가져올 수 있습니다.)

toJson을 추가하면 [sub].tsx에서 sub를 받아오지 못합니다.

0

122

2

쿠키 저장이 되지 않습니다.

0

226

1

AxiosError {message: 'Request failed with status code 401/500', name: 'AxiosError', code: 'ERR_BAD_RESPONSE', (2)

0

581

1

AxiosError {message: 'Request failed with status code 401/500', name: 'AxiosError', code: 'ERR_BAD_RESPONSE',

0

651

1

overload 에러

0

170

1

docker compose up 오류

0

209

1

부록) remark 강의 중 parmas 오류

0

140

1

3000번은 잘 들어가지는데 80번은 안됩니다.

1

295

0

커뮤니티를 올리고 난 후 404 page

0

209

1

tailwind css 문제인지, className 에 적용한 css가 적용되지 않아요.

0

1043

2

tsx 수정 시 마다 빌드 후 서버 시작 해야하나요?

0

654

2

useState 쳤을 때 자동완성 되는 단축키 무엇인가요? extention 인가요?

0

805

2

리액트 서버 npm run dev 와 npm run build 후 npm start 의 차이

0

4614

2

data 폴더가 생성되지 않아요.

0

527

1

docker-compose up 오류

0

814

1

회원 가입 페이지 기능 생성(3) 중 에러

0

380

2

Entity에 toJSON 코드 입력 후 404 에러

0

252

1

context에서 useEffect 선언 부분 질문 있어요.

0

295

1

src 폴더구조

0

511

2

서버 실행 시 에러 관련하여 답변받고 1차 조치했는데 여전하여서 질문 남깁니다

0

298

1

엔티티 모두 작성 후 서버 실행 시 에러가 발생합니다

0

313

1

회원가입 누르면 404에러가 뜹니다 ;-;

1

424

1

nextjs버젼에 대해서 질문드립니다.

0

373

1

<npm run dev>시 -61 에러가 나타납니다!

0

359

1