在Webpack 5中可以期待什么?

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

内容简介:昨天,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


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

查看所有标签

猜你喜欢:

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

Spring Boot实战

Spring Boot实战

[美]克雷格·沃斯 / 丁雪丰 / 人民邮电出版社 / 2016-9 / 59.00元

本书以Spring应用程序开发为中心,全面讲解如何运用Spring Boot提高效率,使应用程序的开发和管理更加轻松有趣。作者行文亲切流畅,以大量示例讲解了Spring Boot在各类情境中的应用,内容涵盖起步依赖、Spring Boot CLI、Groovy、Grails、Actuator。对于Spring Boot开发应用中较为繁琐的内容,附录奉上整理完毕的表格,一目了然,方便读者查阅。一起来看看 《Spring Boot实战》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具