Next.js團隊發布了其開源React框架的7版本。該版本的Next.js主要是改善整體的開發體驗,包括啟動速度提升57%、開發時的構建速度提升40%、改進錯誤報告和WebAssembly支持。
\\Next.js是一個React框架,它的主要目標是在生產環境中提供出色的性能和良好的開發體驗。為了提供這種良好的開發體驗,Next.js支持服務器端渲染、代碼分割和客戶端路由。
\\Next.js以JavaScript生態系統中的許多標準行業工具為基礎構建,比如Babel和Webpack,而版本7帶來了這些工具的最新版本。這些升級以及一個新的增量編譯緩存意味著Next.js編譯現在快了40%,一個基本應用程序的編譯時間將從304ms減少到178ms。
\\隨著Webpack升級,得益于新增的.mjs支持,Next.js 7允許捆綁所有常見的JavaScript模塊,如CommonJS、AMD和ESM,同時也支持EcmaScript, JSON和WebAssembly模塊。
\\Next.js 7還捆綁了最新版本的Babel,它提供了對TypeScript、片段語法和尚處于試驗階段的“自動填充(poly filling)”的支持。
\\Next.js 7的初始有效載荷大小降低了多達7.4%,一個在Next.js以前的版本中大小為1.62kB的文檔變成了到1.50kB。這些改進源于Next.js團隊刪除了某些HTML元素并縮小了一些內聯腳本。
\\Next.js 7的另一個主要改進是對React Context API的支持。Context API是一種跨React組件共享數據的方式,而且不必每次都顯式共享。得益于Next.js能夠在頁面之間共享代碼,這將使其內存使用減少16%。
\\Next.js 7支持模塊的動態導入;之前,由于Next.js使用自己的導入功能,這是不可能的。現在,他們已經刪除了這個功能,并且支持Webpack自帶的默認導入功能,允許動態導入、命名和綁定文件。
\\Next.js在社區內得到了廣泛好評。Reddit用戶reacttricks說,“在過去一年半的時間里,我所有的項目都在使用Next.js,我建議每個人都嘗試一下。”其他的反饋包括對接下來會發生什么的困惑。theineffablebob問:“Next是一個包含了讓站點啟動和運行所需的所有內容的框架嗎?它有點像那些樣板文件?”Nextjs.org將自己視為JavaScript和React世界的PHP,nextjs.org上有這樣一句話:“考慮一下如何用PHP創建web應用。創建一些文件,編寫PHP代碼,然后簡單地部署它。我們不必太考慮路由問題,應用程序是在服務器上渲染的。
\\感興趣的讀者可以從Next.js網站上下載最新版本。
\\查看英文原文:Next.js 7 Released with 40% Faster Builds