Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- socket.io
- Modal
- typescript
- docker
- graphql
- component
- express
- sequelize
- 회고
- Redux
- 웹팩
- npx
- cicd
- 웹크롤링
- Recoil
- CDN
- 정규표현식
- scrapping
- go
- javascript animation
- 반응형웹
- 성능최적화
- styled-component
- AWS
- react
- route
- 포트포워딩
Archives
- Today
- Total
프로그래밍 공부하기
ESLint / Prettier가 작동 안 됨 (ES Module) 본문
eslint, prettier를 적용한 뒤 작업을 하던 중 어느 순간부턴가 저장을 해도 자동으로 변경이 안된다. 이를 해결하기 위해 먼저 eslint output panel을 살펴보았다.
[Info - 2:16:58 PM] Must use import to load ES Module:
/Users/user/Documents/development/practice/.prettierrc.js
require() of ES modules is not supported.
require() of /Users/user/Documents/development/practice/.prettierrc.js
from /Users/user/Documents/development/practice/node_modules/prettier/third-party.js is
an ES module file as it is a .js file whose nearest parent package.json
contains "type": "module" which defines all .js files in that package scope as ES modules.
Instead rename .prettierrc.js to end in .cjs,
change the requiring code to use import(), or remove "type": "module"
from /Users/user/Documents/development/practice/package.json.
Occurred while linting /Users/user/Documents/development/practice/app.js:1
나는 코드를 작성할 때 require, module.export 보다는 ES 6부터 도입된 import, export 모듈을 선호하는 편이다. 이 때문에 package.json에 type:module을 넣었고, bable-eslint를 설치하여 Eslint의 파서로 사용하고 있었다. 그런데 이 때문에 오히려 prettier 설정 파일인 .prettierrc.js 를 읽지 못하는 오류가 발생한 것으로 추측된다.
module.exports = {
"singleQuote": true,
"semi": true,
"useTabs": false,
"tabWidth": 2,
"trailingComma": "all",
"printWidth": 80,
"arrowParens": "avoid"
};
.prettierrc.js는 기본적으로 module.exports 형식을 사용하고 있다. 따라서 ES6 모듈 형식을 사용하기 위한 설정들과는 맞지 않는 것이다. 이를 고치기 위해선 .prettierrc.js를 json 형식으로 변경하면 된다.
{
"singleQuote": true,
"semi": true,
"useTabs": false,
"tabWidth": 2,
"trailingComma": "all",
"printWidth": 80,
"arrowParens": "avoid"
}
위와 같이 .prettier.js 를 .prettier.json으로 변경하게되면 저장 후 포맷팅이 잘 동작한다!
'ErrorLog' 카테고리의 다른 글
DOM에서 사라진 요소는 dragEnd 이벤트가 발생할 수 없다. (0) | 2022.03.13 |
---|---|
Jest에서 ES6 모듈 사용하기 (Expriemental Suport) (1) | 2021.09.04 |
브라우저별 Full Screen (0) | 2021.08.08 |
Could not find a package.json file. (0) | 2021.07.19 |
[AWS] Access Denied (0) | 2021.06.23 |
Comments