프로젝트에 TypeScript를 사용하기 위해 TypeScript ESLint개발환경을 설정한다음, npm run lint
를 커멘드라인에 실행했다. 그랬더니 아래와 같은 에러가 나왔다.
// require문이 import문의 일부가 아닙니다.
/Users/seon-yeong/work/project/everyday-with-you/webpack.config.js
1:14 error Require statement not part of import statement @typescript-eslint/no-var-requires
에러가 나는 위치를 보니 webpack.config.js
였다. 해당 파일에 수정을 해야함을 알 수 있었다.
typescript-eslint 깃헙레포에 들어가서 eslint-plugin의 docs중, no-var-requires에 관련된 rules를 살펴봤다. 해당 규칙은 최신 모듈 구문을 사용하는데 관심이 있으면 사용하는 듯 보였다.
그래서 아래와 같이 예시를 보고 Correct하게 webpack.config.js
환경설정을 변경해주었다.
const path = require('path'); => import path from 'path';
var foo = require('foo');
const foo = require('foo');
let foo = require('foo');
import foo = require('foo');
require('foo');
import foo from 'foo';