이채현
이 문서는 eslint.org를 참고하여 eslint 7.32.0
버전에서 작성되었으며, 아래 프로젝트를 기반으로 작성했습니다.
https://github.com/chlee1001/react-typescript-simple-boilerplate
이채현
이 문서는 eslint.org를 참고하여 eslint 7.32.0
버전에서 작성되었으며, 아래 프로젝트를 기반으로 작성했습니다.
https://github.com/chlee1001/react-typescript-simple-boilerplate
이채현
많은 사람들은 선언한 모듈들을 command/ctrl + click으로 해당 파일로 바로 이동하거나 자동완성이 되게하는 IDE나 Editor의 기능을 사용할 것이다. 그리고 babel-plugin-module-resolver
을 통해 모듈의 경로를 별칭으로 바꿔서 사용할 것이다. 하지만 별칭으로 바꾸면서 위 기능이 깨지는 문제가 종종 있다. 그리고 이 문제는 플러그인쪽에서는 해결되지 않고 있다. npm에 올라온 최신버전은 이미 2년이 지났다.
이채현
Webpack
으로 React
프로젝트를 초기 설정하다가 ,
1 | presets: [ |
위 코드의 presets가 과연 .babelrc
에 있어야 하는지, webpack.config.js
에 있어야하는지 잘 모르겠어서 각 파일의 목적을 정리해보았다.
이채현
프로젝트의 규모가 커지면 디렉토리 구조도 복잡해진다. 그 때문에 아래와 같이 컴포넌트의 위치를 찾기 어려워진다.
1 | import { whereIsThis } from "../../../../../aaa/bbb/ccc"; |
위와 같이 작성한 것을 상대경로
라고 한다. 상대 경로를 사용해서 모듈을 불러오면 모듈이 어느 경로에 위치하는지 파악하기가 난해해지는 경우가 생긴다. 뿐만 아니라, 이 자바스크립트 파일을 다른 디렉토리로 옮기려면 상대 경로를 그에 따라 모두 수정해줘야 해서 코드 리펙토링(refactoring)이 상당히 불편하다.
이채현
1 | function App() { |
위 코드의 결과는 버튼을 눌러도 1씩 증가한다.
이채현
이채현
1 | function returnX(){ |
이채현
class
선언은 프로토타입 기반 상속을 사용1 | function Person(name, age) { |
이채현
자바스크립트는 프로토타입 기반의 언어다.
1 | function Person(name, age) { |