手机版
你好,游客 登录 注册
背景:
阅读新闻

在Webpack 5中可以期待什么?

[日期:2019-02-08] 来源:Linux公社  作者:Linux [字体: ]

昨天,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

linux
相关资讯       Webpack  Webpack 5 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款