如果你使用了如 Babel、Vite、Webpack,可能是需要 core-js
:
npm install core-js
并確保你的 babel.config.js
中配置了:
presets: [
['@babel/preset-env', {
useBuiltIns: 'usage',
corejs: 3
}]
]
2. 不應(yīng)該手動(dòng)引入 es.js
- core-js/modules/es.js 并不是官方推薦使用的路徑。
- 正確做法是引用具體模塊,比如:
import 'core-js/modules/es.promise';
import 'core-js/modules/es.array.includes';
3. 如果是 Vite 報(bào)錯(cuò)
你可能使用了 ESM 模塊但導(dǎo)入了不規(guī)范路徑:
- 檢查是否有語(yǔ)句類似:
import 'core-js/modules/es.js'; // ?
- 改為:
import 'core-js/stable'; // ?
常見(jiàn)場(chǎng)景 2:你使用的第三方庫(kù)中引用了 es.js
,但文件加載失敗
排查方式
- 瀏覽器控制臺(tái) → Network → 搜索 es.js,看是加載失敗還是 404?
- 找到這個(gè) es.js 是從哪里引用的?在 script 中?還是某個(gè)依賴自動(dòng)引入?
- 是不是你本地或線上部署缺少這個(gè)文件?
解決方法
?? 方法 1:確保依賴完整
如果你在用某個(gè) UI 庫(kù)(比如 element-plus、mint-ui),看看是不是漏裝了依賴:
npm install
?? 方法 2:使用正確的構(gòu)建工具(Vite/Webpack)
比如用 Vite 時(shí)不要隨便 import 某些 polyfill,建議只使用 core-js/stable
和 regenerator-runtime/runtime
:
import 'core-js/stable';
import 'regenerator-runtime/runtime';
場(chǎng)景 3:你自己寫(xiě)了個(gè) es.js
腳本,但頁(yè)面中無(wú)法執(zhí)行
檢查點(diǎn)
- 路徑是否正確(是否寫(xiě)成了 /js/es.js 但實(shí)際路徑不同)
- 文件類型是否為 .js(不是 .txt)
- 是否被瀏覽器阻止跨域或 MIME 類型問(wèn)題
- script 標(biāo)簽寫(xiě)法是否正確: