티스토리 뷰
.eslintrc.js
const path = require('path');
module.exports = {
/**
eslint는 자바스크립트만 해석할 수 있다.
eslint가 타입스크립트를 해석 할수 있게끔 parser를 지정해주자.
*/
parser: '@typescript-eslint/parser',
plugins: [
'@typescript-eslint', // 타입스크립트 문법이 들어있다.
'react' // 리액트 문법이 들어있다.
],
env: {
browser: true, // 브라우저 환경에서 eslint를 사용하겠다.
},
extends: [
// @typescript-eslint/eslint-plugin에서 추천하는 규칙들로 타입스크립트 파일을 검사하겠다.
'plugin:@typescript-eslint/recommended',
/**
eslint에 prettier를 붙여서 사용할건데, eslint와 prettier 둘다 포매팅 관련 룰을 가지고 있다.
그래서 eslint의 포매팅 관련 룰을 사용하지 않고 prettier의 룰로 대체시켜야한다.
eslint에 prettier를 붙이기 위해 eslint-config-prettier를 설치해야한다.
위에서 추가한 plugin:@typescript-eslint/recommended 에는 eslint의 포매팅 룰이 들어가있는데
이걸 prettier의 포매팅 룰로 교체시켜야한다.
eslint의 타입스크립트 포매팅 기능을 제거하고,
prettier의 타입스크립트 포매팅 기능을 사용하겠다는 의미이다.
*/
'prettier/@typescript-eslint',
/**
포매팅 능력은 eslint보다 prettier가 월등하다.
따라서, eslint의 react 포매팅 기능을 제거하고 prettier의 react 포매팅 기능을 켜주자.
*/
'prettier/react',
/**
eslint-plugin-prettier를 활성화 시킨다.
이 플러그인은 prettier의 에러를 eslint 에러로 찍히게 만들어준다.
반드시 마지막에 위치해야 한다.
*/
'plugin:prettier/recommended'
],
parserOptions: {
project: path.resolve(__dirname, './tsconfig.json'),
tsconfigRootDir: __dirname,
ecmaVersion: 2018, // 최신 ES 문법을 컴파일한다.
sourceType: 'module', // Allows for the use of imports
ecmaFeatures: {
jsx: true // Allows for the parsing of JSX
}
},
rules: {
'@typescript-eslint/explicit-function-return-type': 'off',
'@typescript-eslint/no-unused-vars': 'off',
},
settings: {
react: {
version: 'detect' eslint-plugin-react가 자동으로 프로젝트의 React 버전을 탐지한다.
}
}
};
'Typescript' 카테고리의 다른 글
typescript의 unknown과 never 타입 (1) | 2020.07.16 |
---|---|
typescript의 never타입 (0) | 2020.07.16 |
스토리북 typescript bug, import된 타입을 불러오지 못하는 현상 (0) | 2020.05.29 |
fork-ts-checker-webpack-plugin 란 (0) | 2020.05.29 |
Type vs Interface 어떤것을 써야할까? (0) | 2020.04.13 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- hydrate
- await
- mobx
- reducer
- async
- return type
- Action
- es6
- useRef
- react
- Polyfill
- atomic design
- reactdom
- rendering scope
- promise
- storybook
- Babel
- javascript
- props
- state
- Next.js
- react hooks
- typescript
- computed
- reflow
- useEffect
- design system
- type alias
- server side rendering
- webpack
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함