(Translated by https://www.hiragana.jp/)
Next.js - 维基百科,自由的百科全书 とべ转到内容ないよう

Next.js

本页使用了标题或全文手工转换
维基百科ひゃっか自由じゆうてき百科ひゃっかぜん
Next.js
The Next.js logo, a stylization of its name
Next.js logo
原作げんさくしゃGuillermo Rauch[1]
开发しゃVercelえいVercel 开放原始げんししゃぐん[2]
くび发布2016ねん10がつ25にち,​7ねんまえ​(2016-10-25[3]
とうぜん版本はんぽん
  • 14.2.6 (2024ねん8がつ21にち;稳定版本はんぽん)[4]
编辑维基数据链接
原始げんし码库github.com/vercel/next.js
编程语言JavaScript, TypeScript and Rust
平台ひらだいWeb platform
ぶんけん大小だいしょう17.0 MB
类型Web application framework
许可协议MIT License
网站nextjs.org

Next.js一个构建于Node.jsこれじょうてき开源Web开发かまち支持しじもとReactてきWeb应用ほどしきこうのうれいふく务端渲染生成せいせいせい态网站。React于官かたぶんけんないてき“推荐てき工具こうぐ链”ちゅうひさげ及Next.js,けん议将其作为“使用しようNode.js构建伺服渲染网站”てきかい决方あん[5]。传统てきReact应用ほどしきただのうざいきゃく户端浏览ちゅう渲染内容ないよう,Next.js扩展りょう此功のう包括ほうかつざいふく务端渲染てき应用ほどしき

Next.jsてき著作ちょさく权和しょう标归Vercel(前身ぜんしん为ZEIT)所有しょゆう[6],该公司こうし也维护和ぬし导其开放原始げんし码项目的もくてき开发[7]

背景はいけい

[编辑]

Next.jsいち个Reactかまち,它支持しじ一些额外的功能,包括ほうかつふく务端渲染かずしず态网站生成せいせい[8]。ReactいちJavaScript库,传统うえよう于构けん使用しようJavaScriptざいきゃく户端浏览ちゅう渲染てき网页应用ほどしき[9]しか而开发者识到这种策略さくりゃく存在そんざいいち些问题,れい如无ほう满足无法访问あるきんようJavaScriptてきよう户、潜在せんざいてき安全あんぜん问题、あきら显延长页めん载时间以及可能かのう损害网站てき整体せいたい搜索そうさく引擎优化[9]。诸如Next.js类的かまち利用りようまこと许在发送いたきゃく户端ぜんざいふく务端渲染部分ぶぶんある全部ぜんぶ网站らい避开这些问题[9][10]。Next.jsさい流行りゅうこうてきReactかまちいち[11]。它是启动しん应用ほどしき时可ようてき几个推荐“工具こうぐ链”いち所有しょゆう这些提供ていきょうりょう一个抽象层来协助完成常见的任务[12]。Next.js需要じゅようNode.js而且利用りようNode Package Manager进行启动。

GoogleやめこうNext.js项目捐款,ざい2019ねん贡献りょう43个拉请求(Pull request),协助おさむ剪了使用しようてきJavaScript、减少りょう载时间与增加ぞうかりょうあらため进指针[13]。截至2020ねん3がつ,该框やめ许多大型おおがた网站使用しよう包括ほうかつNetflixGitHubUber、Ticketmasterほしともえかつ[9]2020年初ねんしょ,Vercel宣布せんぷつのりょう2100まんもとてきA轮融资もちいらい支持しじ软件てきあらため[1]。该框てき原作げんさくしゃGuillermo Rauch目前もくぜんVercelてきCEO,该项目的もくてき开发主管しゅかん Tim Neutkens[14]

发展历程

[编辑]

Next.js于2016ねん10がつ25にちくびざいGitHub上作じょうさく为开放原始げんし码项发布[3]。它最はつもと于六个原则开发的:开箱そくようてきこうのう,无需设置,JavaScript无处不在ふざいしょ有功ゆうこう能都のとようJavaScript编写,动代码拆ぶん伺服渲染,配置はいちてき资料获取,预测请求简化部署ぶしょ[15]。Next.js 2.0于2017ねん3がつ发布,其中包括ほうかつ改善かいぜん使つかい小型こがた网站开发变得さら容易ようい。还提だかりょう构建效率こうりつ并提だかりょう热模块更换功のうてき扩展せい[16]。7.0はん于2018ねん9がつ发布,あらため进了错误处理并支持しじReactてき上下じょうげぶんAPI以改进动态路よし处理。也是だいいち个升级到webpack 4てき版本はんぽん[17]。8.0はん于2019ねん2がつ发布,だい一个提供无伺服器应用程式部署的版本,其中だい码被拆分为按需运ぎょうてき匿名とくめい函数かんすう(Lambda function)。该版ほん还减しょうりょうせい态导出所しゅっしょ需的时间资源,并提だかりょう预取性能せいのう[18]。9.3はん于2020ねん3がつ发布,包括ほうかつかく种优以及全局ぜんきょくSassCSS支持しじ[19]。于2020ねん7がつ27にち,Next.js 9.5はん发布,增加ぞうかりょう包括ほうかつ增量ぞうりょうせい再生さいせい(incremental static regeneration, ISR)、じゅうしんうつしにゅうかず重定しげさだこう支持しじざい内的ないてきしんこうのう[20]。于2021ねん6がつ15にち,Next.jsだい11はん发布,其中包括ほうかつ:Webpack 5支持しじ、实时协作编码こうのう预览“Next.js Live”,以及从Create React App动转换为Next.jsてき实验せいこうのうけんよう形式けいしき“Create React App Migration”[21]。2021ねん10がつ26にち,Next.js 12发布,增加ぞうかりょうRust编译使つかい编译速度そくどさらかい支持しじAVIF,Edge Functionsあずかちゅう间件,原生げんせいESMあずかURL输入[22]

样式かずいさおのう

[编辑]

Next.js支持しじCSS样式以及预编译的SCSSSASS、CSS-in-JSStyledJSX[12]。此外,它也利用りようTypeScript支持しじ和智わちとし捆绑构建[23]。开放原始げんし码编译器Babelよう于将だい码转换和编译なり浏览可用かようてきJavaScript。Webpack另一个开放原始码工具,よう于在きさきつつみ块。所有しょゆう这些工具こうぐざい指令しれい终端ちゅうあずかNPM一起かずき使用しよう[13]

Next.jsてき主要しゅようとくてん使用しようふく务端渲染らい减轻网页浏览てき负担并提供ていきょう增强ぞうきょう安全あんぜんせい。这可以针对应ようほどしきてきにんなん部分ぶぶんあるせい个项完成かんせい,从而まこと许将内容ないよう丰富てき页面单独挑出来できよう于服务端渲染[9]。也可以仅针对くび访客进行,以减轻尚した载任なん网站资产てき网络浏览てき负载[10]。“热重载(Hot reloading)”こう能会のうかいざい更改こうかい发生时侦测更改こうかい并重しん渲染适当てき页面,いん此伺ふく也避めんじゅう启。まこと许对应用ほどしきてきだい码所做的更改こうかいりつそく反映はんえいざい网页浏览ちゅうつきかんぼう些浏览器かい要求ようきゅう刷新さっしん[9]。该软けん使用しようもと于文けんけい统的よし让开发更便利べんりあずか包括ほうかつ对动态路よしてき支持しじ。其他こうのう包括ほうかつ热模块替换,以便以实时替换模块,动代码拆ぶん,仅包括ほうかつ载页めんしょ需的だい码,以及页面预取减少载时间[9]

Next.js还支持しじ增量ぞうりょうせい再生さいせい(ISR)[24]かずしず态站てん生成せいせい(SSG)网站てき编译版本はんぽん通常つうじょうかいざい构建间构けん并以.nextぶんけん夹的型式けいしきそん储。当用とうよう提出ていしゅつ请求时,さく为静态HTML页面てき预构けん版本はんぽんはた缓存并发送出そうしゅつ。这会使とく载时间非常ひじょう快速かいそくただし它并适合ごと个网站,ゆう其是对于经常更改こうかい利用りよう大量たいりょうよう户输いれてき交互こうごしき网站しょうかい变得适合。

外部がいぶ链接

[编辑]

参考さんこう文献ぶんけん

[编辑]
  1. ^ 1.0 1.1 April 21, Matt Asay in Developer on; 2020; Pst, 9:51 Am. How Next.js aims to simplify front-end development. TechRepublic. 21 April 2020 [2020-10-20]. (原始げんし内容ないようそん于2022-05-23) えい语). 
  2. ^ vercel/next.js. GitHub. [2019-03-17]. (原始げんし内容ないようそん于2019-03-16). 
  3. ^ 3.0 3.1 Next.js First Release. GitHub. 2019-03-14 [2019-03-17]. (原始げんし内容ないようそん于2020-10-10). 
  4. ^ Release 14.2.6. 2024ねん8がつ21にち [2024ねん8がつ23にち]. 
  5. ^ Recommended Toolchains. React documentation. [10 July 2021]. (原始げんし内容ないようそん于2022-05-17). 
  6. ^ ZEIT is now Vercel, 21 April 2020 [2022-05-18], (原始げんし内容ないようそん于2021-12-15) 
  7. ^ Develop. Preview. Ship. For the best frontend teams – Vercel. vercel.com. [2020-09-22]. (原始げんし内容ないようそん于2021-10-06). 
  8. ^ Differences Between Static Generated Sites And Server-Side Rendered Apps. Smashing Magazine. 2020-07-02 [2020-10-19]. (原始げんし内容ないようそん于2022-05-21) えい语). 
  9. ^ 9.0 9.1 9.2 9.3 9.4 9.5 9.6 Thakkar, Mohit, Thakkar, Mohit , 编, Next.js, Building React Apps with Server-Side Rendering: Use React, Redux, and Next to Build Full Server-Side Rendering Applications (Berkeley, CA: Apress), 2020: 93–137 [2020-10-20], ISBN 978-1-4842-5869-9, S2CID 241224880, doi:10.1007/978-1-4842-5869-9_3, (原始げんし内容ないようそん于2022-06-06) えい语) 
  10. ^ 10.0 10.1 Thakkar, Mohit, Thakkar, Mohit , 编, Adding Server-Side Rendering to Your React Application, Building React Apps with Server-Side Rendering: Use React, Redux, and Next to Build Full Server-Side Rendering Applications (Berkeley, CA: Apress), 2020: 139–152 [2020-10-20], ISBN 978-1-4842-5869-9, S2CID 216333955, doi:10.1007/978-1-4842-5869-9_4, (原始げんし内容ないようそん于2020-10-26) えい语) 
  11. ^ December 2, Matt Asay in Developer on; 2019; Pst, 11:58 Am. Why front-end development may be the new frontier. TechRepublic. 2 December 2019 [2020-10-20]. (原始げんし内容ないようそん于2022-03-25) えい语). 
  12. ^ 12.0 12.1 Comparing Styling Methods In Next.js. Smashing Magazine. 2020-09-17 [2020-10-20]. (原始げんし内容ないようそん于2022-03-19) えい语). 
  13. ^ 13.0 13.1 January 31, Matt Asay in Developer on; 2020; Pst, 6:33 Pm. An insider's look at Google's web framework contributions to Next.js and more. TechRepublic. February 2020 [2020-10-19]. (原始げんし内容ないようそん于2022-05-21) えい语). 
  14. ^ Static site generation with single page app functionality? That's what's coming Next(.js). Stack Overflow Blog. 2020-10-07 [2020-10-20]. (原始げんし内容ないようそん于2022-03-25) 美国びくにえい语). 
  15. ^ Krill, Paul. Next step after Node.js: Framework for 'universal' JavaScript apps. InfoWorld. 2016-10-31 [2020-10-20]. (原始げんし内容ないようそん于2022-05-21) えい语). 
  16. ^ Krill, Paul. Next.js 2.0 plays better with React and JavaScript. InfoWorld. 2017-03-28 [2020-10-20]. (原始げんし内容ないようそん于2022-03-18) えい语). 
  17. ^ Krill, Paul. Next.js 7 framework compiles faster, supports WebAssembly. InfoWorld. 2018-09-21 [2020-10-20]. (原始げんし内容ないようそん于2022-05-21) えい语). 
  18. ^ Krill, Paul. Next.js 8 now supports serverless apps. InfoWorld. 2019-02-14 [2020-10-20]. (原始げんし内容ないようそん于2022-05-21) えい语). 
  19. ^ Krill, Paul. Next.js upgrade emphasizes static site generation. InfoWorld. 2020-03-12 [2020-10-20]. (原始げんし内容ないようそん于2022-05-21) えい语). 
  20. ^ Krill, Paul. Next.js adds incremental static pages regeneration. InfoWorld. July 27, 2020 [September 22, 2020]. (原始げんし内容ないようそん于October 2, 2020). 
  21. ^ Next.js 11. [2021-07-10]. (原始げんし内容ないようそん于2022-05-07). 
  22. ^ Next.js 12. nextjs.org. [2021-10-27]. (原始げんし内容ないようそん于2022-06-02) えい语). 
  23. ^ Krill, Paul. Next.js 8 now supports serverless apps. InfoWorld. February 14, 2019 [September 22, 2020]. (原始げんし内容ないようそん于October 2, 2020). 
  24. ^ Incremental Static Regeneration with Next.js. Vercel. [2022-03-06]. (原始げんし内容ないようそん于2022-04-10) えい语).