-
카테고리
-
해결 여부
미해결
path.resolve() 예제 이해가 안되요
17.10.15 23:26 작성 조회수 1.05k
0
path.resolve('/foo/bar', './baz'); // return: '/foo/bar/baz'
- 순서대로 만들어지고
path.resolve('/foo/bar','/tmp/file/'); // return: '/tmp/file'
- 이건 왜 /foo/bar가 없나요? './tmp/file' 여기서 './' 현재 디렉토리를 정의해서 더이상 왼쪽으로 찾아가지 않는건가요?
웹팩 실행 시
path.resolve(__dirname, '/dist');
- __dirname은 './' 이거랑 같은 의미인가요?
path.resolve('/foo', '/dist');
- 이렇게 수정하면 아래와 같은 에러는 왜 생기는건가요?
Error: EACCES: permission denied, mkdir '/foo'
답변을 작성해보세요.
0
이덕희 Lee
질문자2017.10.18
아 이해했습니다 고맙습니다 : )
혹시 그럼 마지막path.resolve(‘/foo’, ‘/dist’); 이부분은 왜 안되는걸까요?
루트 경로인 /dist 에 되는거 아닌가요?
0
박찬민 박
2017.10.16
강사님께서 첨부해주신 링크를 보니깐 resolve는 가장 오른쪽 인자부터 시작해서 절대 경로가 만들어질때까지 명시된 경로를 합쳐나가는것 같습니다.
그래서 2번째 질문에서 결과가 /tmp/file로 나오는것은 루트 경로인 ' / '까지 도달해서 절대경로가 만들어졌기 때문에 /foo/bar를 경로에 합치는 작업은 하지 않은것 같습니다.
(질문에서 ./tmp/file 이라고 하셨는데 다시 보시면 /tmp 앞에는 . 이 없습니다.)
__dirname는 현재 모듈의 현재 폴더 위치라고 하네요.(https://nodejs.org/docs/latest/api/modules.html#modules_dirname)
덕희님 질문 덕에 저도 자료를 찾아보면서 resolve를 좀 알게되었네요 ㅎㅎ 감사합니다.
답변 2