react-app-polyfill 패키지에는 다양한 브라우저용 폴리필이 포함되어 있습니다
cra(create-react-app)로 프로젝트를 생성할시 최소한의 폴리필이 설정되어 있는걸 볼 수 있다.
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
cra로 프로젝트를 생성할 경우 package.json의 아래 요소가 지원브라우저를 가리킨다.
npm install react-app-polyfill
or
yarn add react-app-polyfill
stable과 함께 import 해준경우 IE9 폴리필을 가져오면 IE10 및 IE11 지원이 포함됩니다.
import 반드시 src/index.js 첫번째 줄에 포함시켜 줍니다.
Internet Explorer 9
// This must be the first line in src/index.js
import 'react-app-polyfill/ie9' ;
import 'react-app-polyfill/stable' ;
// ...
Internet Explorer 11
// This must be the first line in src/index.js
import 'react-app-polyfill/ie11' ;
import 'react-app-polyfill/stable' ;
// ...
babel-loader 가 package.json 파일의 변경 사항을 바로 감지하지 못할 수 있기 때문에 빠른 해결 방법은 node_modules/.cache 폴더를 삭제하고 다시 시도한다.
"browserslist": {
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version",
"ie 11"
]
}
https://create-react-app.dev/docs/supported-browsers-features