Next.js 7发布,构建速度提升40%
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发布,构建速度提升40%的更多相关文章
- Webpack5构建速度提升令人惊叹,早升级早受益
为什么要升级? webpack4用的好好的,运行稳定,为什么要升级到webpack5, 每次升级,都要经历一场地震,处理许多loader和plugin API的破坏性改变. 请给我们一个充分的升级理由 ...
- Docker实用技巧之更改软件包源提升构建速度
一.开篇 地球,中国,成都市,某小区的阳台上,一青年负手而立,闭目沉思,阵阵的凉风吹得他衣衫呼呼的飘.忽然,他抬起头,刹那间,睁开了双眼,好似一到精光射向星空,只见这夜空......一颗星星都没有.他 ...
- webpack 提升90%的构建速度 HardSourceWebpackPlugin
HardSourceWebpackPlugin 插件 不能提升第一次构建的速度,但对于第二次构建能提升99%的构建速度 第一次构建: 第二次: 提升了..,算不出来,反正就是很多啦~~~ npm in ...
- vue-cli3使用 DllPlugin 实现预编译,提升构建速度
在项目打包上有两个目标:减少打包代码体积和加快打包速度 1. 减少打包体积: (1)对于用的比较少的库,可以去掉(我去掉了jquery以及lodash),用到的地方,参考源码自己写 (2)非用不可的又 ...
- xmake v2.3.2 发布, 带来和ninja一样快的构建速度
这个版本重点重构优化了下内部并行构建机制,实现多个target间源文件的并行编译,以及并行link的支持,同时优化了xmake的一些内部损耗,修复影响编译速度的一些bug. 通过测试对比,目前的整体构 ...
- 整体算力提升40% 芯片级安全防护 | 阿里云发布第七代ECS云服务器
2 月 8 日,阿里云宣布推出第七代 ECS 云服务器产品家族,基于最新的神龙架构,相较于上一代整体算力提升 40%,容器部署密度最大可提升 6 倍,是最佳的云原生载体,此外全量搭载安全芯片,实现&q ...
- 人力节省 50%,研发效能提升 40%,阿里 Serverless 架构落地实践
作者 | 万佳 嘉宾 | 杨皓然(不瞋) 导读:云的下一波浪潮是什么?杨皓然称"是 Serverless".作为一名阿里老兵,他早在 2010 年即加入阿里云,曾深度参与阿里云飞天 ...
- Android 优化APP 构建速度的17条建议
转载:http://www.jianshu.com/p/a1cc8f2e0877 较长的构建时间将会减缓项目的开发进度,特别是对于大型的项目,app的构建时间长则十几分钟,短则几分钟,长的构建时间已经 ...
- 基于微服务的DevOps落地指南 交付效率提升40%
基于微服务的DevOps落地指南 交付效率提升40% 2015-2016年,珍爱线下门店已新增覆盖城市9个,与此同时,CRM系统大小故障却发生了数十起... ... 珍爱网是以“网络征选+人工红娘”模 ...
随机推荐
- 1050 String Subtraction (20分)
Given two strings S1 and S2, S=S1−S2 is defined to be the remaining string after taking ...
- c#声明数组
声明二维数组时候,出现报错: string[][] dataTable; dataTable = new string[rows][cols]; 无效的秩说明符: 应为","或&q ...
- Array(数组)对象-->unshift() 方法
1.定义和用法 unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度. 语法: array.unshift(item1,item2, ..., itemX) 参数:item1,it ...
- app扫描二维码登陆
先说明一下实现原理: 如同微信扫描登陆一样,就是一种pc的自动登陆授权.在网站首页得有切换登陆的选项:密码登陆 扫码登陆 当用户切换到扫码登陆时,向服务器请求一次获得一个唯一的uukey 利用这个uu ...
- 运行jmeter.bat时 提示 not able to find java executable or version
安装过好几次,这是第一次遇到运行jmeter.bat时 提示 not able to find java executable or version Please check your Java in ...
- 多线程高并发编程(3) -- ReentrantLock源码分析AQS
背景: AbstractQueuedSynchronizer(AQS) public abstract class AbstractQueuedSynchronizer extends Abstrac ...
- 【DataBase】 在Windows系统环境 下载和安装 解压版MySQL数据库
MySQL官网解压版下载地址:https://dev.mysql.com/downloads/mysql/ 为什么不推荐使用安装版?无脑下一步,很多配置的东西学习不到了 点选第一个就好了,下面的是调试 ...
- unity3d之简单动画
Unity3d中有两个关于动画的概念,Animation和Animator,看一下他们的创建和区别 1.创建一个物体后可以添加Animator和Animation组件如图所示 2.Animation和 ...
- vue中的错误日志
一.Error compiling template: Component template requires a root element, rather than just text. 这个错误意 ...
- X - Ehab and Path-etic MEXs CodeForces - 1325C
MMP,差一点就做对了. 题目大意:给你一个树,对这个树的边进行编号,编号要求从0到n-1,不可重复,要求MEX(U,V)尽可能的小, MEX(x,y)的定义:从x到y的简单路径上,没有出现的最小编号 ...