使用 CRA 建立起的專案在 IE 執行時會顯示以下錯誤
( 題外話:IE Edge 沒有問題 )
SCRIPT5022: SyntaxError
File: 0.chunk.js, Line: 176128, Column: 38SCRIPT5022: The error you provided does not contain a stack trace.
File: 0.chunk.js, Line: 205780, Column: 64
因為 IE 無法解析以下
- Promise
- window.fetch
- Object.assign
- Symbol
- Array.from
我們可以使用同 Facebook 套件 react-app-polyfill 解決這個問題
https://www.npmjs.com/package/react-app-polyfill#polyfilling-other-language-features
—
Step1:首先安裝套件
npm install react-app-polyfill
Step2:再來,在 src/index.js 第一行加入
import 'react-app-polyfill/ie11';
import 'react-app-polyfill/stable';
Step3:在 package.json 的 browserslist加入
development: {
"last 1 chrome version"
"last 1 firefox version"
"last 1 safari version"
"ie11" // 加入這行
}
把 node_module 刪除,重新 npm install
裝完後再 npm run start 測試看看 ie 是否顯示正常喔!