在Webpack 5中可以期待什么?

栏目: JavaScript · 发布时间: 6年前

内容简介:昨天,Webpack背后的团队分享了我们将在即将发布的版本Webpack 5中看到的所有更新。这个版本通过持久缓存提高了构建性能,引入了一个新的命名块ID算法等等。对于Webpack 5,支持的最小Node.js版本已从6更新为8。由于此版本是一个主要版本,它将带来重大变化,用户可能希望某些插件无法正常工作。

昨天,Webpack背后的团队分享了我们将在即将发布的版本Webpack 5中看到的所有更新。这个版本通过持久缓存提高了构建性能,引入了一个新的命名块ID算法等等。对于Webpack 5,支持的最小Node.js版本已从6更新为8。

由于此版本是一个主要版本,它将带来重大变化,用户可能希望某些插件无法正常工作。

在Webpack 5中可以期待什么?

Webpack 5中的预期功能

删除了Webpack 4已弃用的功能

此版本中已删除Webpack 4中已弃用的所有功能。因此,迁移到Webpack 5时,请确保您的Webpack构建不显示任何弃用警告。此外,该团队还删除了现在必须传递选项对象的IgnorePlugin和BannerPlugin。

删除了自动Node.js polyfill

Webpack 4之前的所有版本都为大多数Node.js核心模块提供了polyfill。一旦模块使用任何核心模块,这些都会自动应用。使用polyfill可以很容易地使用为Node.js编写的模块,但是这也增加了bundle的大小,因为大型模块被添加到bundle中。为了阻止这种情况,Webpack 5会自动删除此填充,并专注于前端兼容模块。

确定性块和模块ID的算法

Webpack 5带有用于长期缓存的新算法。默认情况下,这些在生产模式下启用,并具有以下配置行:

chunkIds: “deterministic”, moduleIds: “deterministic”

这些算法以确定的方式将短数字ID分配给模块和块。建议您使用chunkIds和moduleIds的默认值。您还可以选择使用旧的默认值chunkIds:“size”,moduleIds:“size”,这将生成较小的包,但更频繁地使它们无效以进行缓存。

命名块ID算法

引入了一种命名的块ID算法,该算法在开发模式下默认启用。它为块和文件名提供了人类可读的名称,而不是旧的数字名称。该算法确定块的内容的块ID。因此,用户不再需要使用import(/ * webpackChunkName:“name”* /“module”)进行调试。要选择退出此功能,您可以将配置更改为chunkIds:“natural”。

编译器空闲并关闭

从Webpack 5开始,编译器需要在使用后关闭。现在,编译器进入和离开空闲状态并为这些状态挂钩。关闭编译后,所有剩余的工作应尽快完成。然后,回调将表示结束已完成。

您可以从 Webpack存储库 中读取整个更改日志。

Linux公社的RSS地址https://www.linuxidc.com/rssFeed.aspx

本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-02/156782.htm


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法之美

算法之美

左飞 / 电子工业出版社 / 2016-3 / 79.00元

《算法之美——隐匿在数据结构背后的原理(C++版)》围绕算法与数据结构这个话题,循序渐进、深入浅出地介绍了现代计算机技术中常用的40 余个经典算法,以及回溯法、分治法、贪婪法和动态规划等算法设计思想。在此过程中,《算法之美——隐匿在数据结构背后的原理(C++版)》也系统地讲解了链表(包括单向链表、单向循环链表和双向循环链表)、栈、队列(包括普通队列和优先级队列)、树(包括二叉树、哈夫曼树、堆、红黑......一起来看看 《算法之美》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

URL 编码/解码
URL 编码/解码

URL 编码/解码

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具