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

Next.js 7发布,构建速度提升40%的更多相关文章

  1. Webpack5构建速度提升令人惊叹,早升级早受益

    为什么要升级? webpack4用的好好的,运行稳定,为什么要升级到webpack5, 每次升级,都要经历一场地震,处理许多loader和plugin API的破坏性改变. 请给我们一个充分的升级理由 ...

  2. Docker实用技巧之更改软件包源提升构建速度

    一.开篇 地球,中国,成都市,某小区的阳台上,一青年负手而立,闭目沉思,阵阵的凉风吹得他衣衫呼呼的飘.忽然,他抬起头,刹那间,睁开了双眼,好似一到精光射向星空,只见这夜空......一颗星星都没有.他 ...

  3. webpack 提升90%的构建速度 HardSourceWebpackPlugin

    HardSourceWebpackPlugin 插件 不能提升第一次构建的速度,但对于第二次构建能提升99%的构建速度 第一次构建: 第二次: 提升了..,算不出来,反正就是很多啦~~~ npm in ...

  4. vue-cli3使用 DllPlugin 实现预编译,提升构建速度

    在项目打包上有两个目标:减少打包代码体积和加快打包速度 1. 减少打包体积: (1)对于用的比较少的库,可以去掉(我去掉了jquery以及lodash),用到的地方,参考源码自己写 (2)非用不可的又 ...

  5. xmake v2.3.2 发布, 带来和ninja一样快的构建速度

    这个版本重点重构优化了下内部并行构建机制,实现多个target间源文件的并行编译,以及并行link的支持,同时优化了xmake的一些内部损耗,修复影响编译速度的一些bug. 通过测试对比,目前的整体构 ...

  6. 整体算力提升40% 芯片级安全防护 | 阿里云发布第七代ECS云服务器

    2 月 8 日,阿里云宣布推出第七代 ECS 云服务器产品家族,基于最新的神龙架构,相较于上一代整体算力提升 40%,容器部署密度最大可提升 6 倍,是最佳的云原生载体,此外全量搭载安全芯片,实现&q ...

  7. 人力节省 50%,研发效能提升 40%,阿里 Serverless 架构落地实践

    作者 | 万佳 嘉宾 | 杨皓然(不瞋) 导读:云的下一波浪潮是什么?杨皓然称"是 Serverless".作为一名阿里老兵,他早在 2010 年即加入阿里云,曾深度参与阿里云飞天 ...

  8. Android 优化APP 构建速度的17条建议

    转载:http://www.jianshu.com/p/a1cc8f2e0877 较长的构建时间将会减缓项目的开发进度,特别是对于大型的项目,app的构建时间长则十几分钟,短则几分钟,长的构建时间已经 ...

  9. 基于微服务的DevOps落地指南 交付效率提升40%

    基于微服务的DevOps落地指南 交付效率提升40% 2015-2016年,珍爱线下门店已新增覆盖城市9个,与此同时,CRM系统大小故障却发生了数十起... ... 珍爱网是以“网络征选+人工红娘”模 ...

随机推荐

  1. go 切片重组

    我们已经知道切片创建的时候通常比相关数组小,例如: slice1 := make([]type, start_length, capacity) 其中 start_length 作为切片初始长度而 c ...

  2. 关于Python 迭代器和生成器 装饰器

    Python 简介Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比 ...

  3. Maybatis的一些总结(二:基本使用过程)

    理清一下使用需要做的步骤 建项目,导入mybatis(3.5.2)和mysql(5.1.47)进pom.xml pom.xml需配置build时过滤器,否则会出现xml文件导出不了的问题 resour ...

  4. Netty是如何处理新连接接入事件的?

    更多技术分享可关注我 前言 前面的分析从Netty服务端启动过程入手,一路走到了Netty的心脏——NioEventLoop,又总结了Netty的异步API和设计原理,现在回到Netty服务端本身,看 ...

  5. CSS3 制作正方体

    一.预备知识 变形属性 2D变形属性 transform:他是css3中的变形属性: 通过transform(变形) 来实现2d 或者3d 转换,其中2d 有,缩放 scale(x, y) ,移动 t ...

  6. 1年左右的Java开发经验面试者的心得

    面试,相信只要踏入这行业的人都会经历,不同的公司有不同的面试流程,但是综合起来,其实还是大体一致的!只有不断的总结自己的面试经历,得出自己的技术不足点,才能更好的去查缺补漏,从而更加自信的进行面试找到 ...

  7. [算法]Miller-Robbin素数判定

    目录 一.实现原理 二.应用 判断一个正整数是否为素数 三.小结 一.实现原理 我们以前都是怎么判断素数的呢: 试除法: 若一个正整数N为合数,则存在一个能整除N的数k,其中\(2\leqslant ...

  8. unity3d的键盘和鼠标输入

    一.键盘的输入 •GetKey,GetKeyDown,GetKeyUp三个方法分别获取用户键盘按键的输入 1. GetKey:用户长按按键有效: bool down = Input.GetKeyDow ...

  9. pickle\json,configparser,hashlib模块

    python常用模块 目录 python常用模块 json模块\pickle模块 configparser模块 hashlib模块 subprocess模块 json模块\pickle模块 首先说一下 ...

  10. C语言二维数组超细讲解

    用一维数组处理二维表格,实际是可行的,但是会很复杂,特别是遇到二维表格的输入.处理和输出. 在你绞尽脑汁的时候,二维数组(一维数组的大哥)像电视剧里救美的英雄一样显现在你的面前,初识数组的朋友们还等什 ...