Next.js 支援 IE11 以及其他現代的瀏覽器 (Edge, Firefox, Chrome, Safari, Opera 等) 且無需額外的配置。
我們廣泛地注入 polyfills,包含有 :
whatwg-fetch
和 unfetch
.url
package (Node.js API).object-assign
, object.assign
和 core-js/object/assign
.如果你的相依性包含這些 polyfills,他們將會從生產版本中自動地被移除來避免相關地重覆。除此之外,為了減少 bundle 大小, Next.js 將只會為需要 polyfills 的瀏覽器載入相關資源。
如果你的程式碼或是所需的任何外部 npm 相依性功能並不被目標瀏覽器支援 (例如: IE 11),你需要自行加入 polyfills。
這個情況下,你需要加入一個最高層 import 以及所需的 特殊 polyfill 在你客製 <App>
或者是某個組件裡。
Next.js 允許你使用最新的 JavaScript,除了 ES6 語法, Next.js 也支援以下版本:
import()
(ES2020)除了在客服端的 fetch()
,Next.js 的 polyfills fetch()
是在 Node.js 環境內。 你可以在伺服器端程式使用 fetch()
(例如 getStaticProps
/getServerSideProps
) 而無需使用 polyfills,例如 isomorphic-unfetch
或 node-fetch
。
Next.js 內建 TypeScript 支援,點擊瞭解更多來看看怎麼使用。
你可以客製化 babel 配置,點擊瞭解更多來看看怎麼使用。