모든 파일은 독립적으로 구성된다. a 파일에서 쓴 A라는 함수는 b파일에서 쓴 A라는 함수와 다른것이다.
따라서 우리는 파일간에 함수, 변수, 등을 공유하고 싶을때 에는 export 와 import 를 사용해야한다.
1. export default ~~
이것은 특정 파일에서 단 한가지만 export 하고싶을 때 사용한다. 예시로 내 프로젝트의 globalRouter.js 파일에서는 globalRouter만을 다른 파일과 공유하고싶기 때문에,
를 작성하였다.
2. export
export default 와 다르게 여러개를 export 할 수 있다. 여러개의 함수, 변수 등을 공유하고 싶을때 쓰는 방법이다.
위와 같이 작성하면 join, edit, remove는 모두 export되어 import하는 파일에서 사용할 수 있다.
3. import
export한 것들을 받아와서 쓰기 위해 필요한 구문이다. 기본형식은 import ### from "경로" 이다. 이때 export default 를 사용했다면 ###에 들어가는 이름은 어느것으로 해도 상관이 없다. 어차피 하나만 export 했기 때문에 변수명을 바꾸어 사용해도 그것을 가리키기 때문이다. 하지만 여러가지를 export 했다면 ### 부분을 중괄호로 묶어서 사용해야하고, 이름도 export 했던 그 이름 그대로를 사용해야한다. 위의 예를들어보자면,
가 되어야 한다. 이때 경로상의 ../ 은 '현재 파일로부터 나가서' 라는 의미이다. 위의 경로는 "현재 파일로부터 나가서 controllers 파일 안의 userController" 라는 의미이다.
++express 패키지도 export 된것이라서 import express from "express" 가 가능한 것 이다.
'Youtube Clone Coding' 카테고리의 다른 글
Pug (2) (0) | 2022.11.02 |
---|---|
Pug (0) | 2022.11.02 |
Routers (0) | 2022.10.31 |
Morgan (middleware) (0) | 2022.10.31 |
Middlewares (0) | 2022.10.30 |