目录
1. Webpack 3 的新特性
1.1 更新方法以及版本迁移
1.2 Scope Hoisting
1.3 Magic Comments
2. 接下来的新特性
3. 总结
首页 web前端 js教程 Webpack3有哪些新特性

Webpack3有哪些新特性

Jun 21, 2017 am 09:41 AM
web webpack 特性

本文简短地分享下最新发布的 Webpack 3 中的新特性,供大家参考。

1. Webpack 3 的新特性

6 月 20 日,Webpack 发布了最新的 3.0 版本,并在 Medium 发布了公告。

Webpack 目前几乎作为前端开发的标配,所以我们一起来看一看新版中有哪些主要的特性更新。
整体相对于 2.0 变化不大,不必惊慌。
Webpack 2.0 的相关视频教程,可以参见我录制的共计 20 集的视频教程,Webpack 2 视频教程。
下面是 v3.0 Release 中的 Features List。

  • node_modules no longer mangle to ~ in stats [breaking change]

  • timeout for HMR requests is configurable

  • added experimental Scope Hoisting (webpack.optimize.ModuleConcatenationPlugin)

  • some performance improvements

  • added output.libraryExport to select an export for the library

  • sourceMapFilename now supports [contenthash] [breaking change]

  • module.noParse supports functions

  • add node: false option to disable all node specific additions

1.1 更新方法以及版本迁移

通过命令直接安装即可,后面需要加上版本号。

npm install webpack@3.0.0 --save-dev
登录后复制

或者

yarn add webpack@3.0.0 --dev
登录后复制

至于从 Webpack 2 升级到 Webpack 3,官方的原话是:

no effort beyond running the upgrade commands in your terminal

所以可以断定,虽然版本号进行了大版本号的变更,不过并不会有太大的变化,可以松一口气了。

1.2 Scope Hoisting

之前的每一个 module 都被包含在一个独立的 function closures 中,这样的处理方式就造成了在代码在浏览器中执行缓慢的问题。
开发团队参考了 Closure Compiler 和 RollupJS 等框架后,将 function closures 的包裹方式变成了可配置的形式。
就是在之前的 plugins 中配置即可。

module.exports = {  
  plugins: [
    new webpack.optimize.ModuleConcatenationPlugin()
  ]
};
登录后复制

当然可能因为某些模块的加载导致不能配置成功,官方提供了 CLI 的参数 --display-optimization-bailout 用于 debug 是什么原因导致了配置失败。

1.3 Magic Comments

其实就是可以命令 chunk name 了。

import(/* webpackChunkName: "my-chunk-name" */ 'module');
登录后复制

更多的使用可以参考这里。

2. 接下来的新特性

  • 更好的编译缓存

  • 更快的首次以及增量编译速度

  • 对 TypeScript 更加友好地支持

  • 修改 Long term caching

  • 增加对 WASM Module 的支持

  • 用户体验的改进

3. 总结

总体看来变化不大,而且如 Magic Comments 等功能就已经在 2.4 的版本中发布了,个人感觉,发布一个 3.0 的版本主要是团队提供更好产品的一个决心象征吧。

以上是Webpack3有哪些新特性的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

掌握Spring MVC的关键概念:了解这些重要特性 掌握Spring MVC的关键概念:了解这些重要特性 Dec 29, 2023 am 09:14 AM

掌握Spring MVC的关键概念:了解这些重要特性

如何从驾驶舱Web用户界面启用管理访问 如何从驾驶舱Web用户界面启用管理访问 Mar 20, 2024 pm 06:56 PM

如何从驾驶舱Web用户界面启用管理访问

PHP在Web开发中是属于前端还是后端? PHP在Web开发中是属于前端还是后端? Mar 24, 2024 pm 02:18 PM

PHP在Web开发中是属于前端还是后端?

web标准是什么东西 web标准是什么东西 Oct 18, 2023 pm 05:24 PM

web标准是什么东西

Golang 的浏览器支持:搭建交互式 Web Golang 的浏览器支持:搭建交互式 Web Apr 07, 2024 pm 04:03 PM

Golang 的浏览器支持:搭建交互式 Web

选择适用的Go版本,根据需求和特性 选择适用的Go版本,根据需求和特性 Jan 20, 2024 am 09:28 AM

选择适用的Go版本,根据需求和特性

h5怎么实现web端向上滑动加载下一页 h5怎么实现web端向上滑动加载下一页 Mar 11, 2024 am 10:26 AM

h5怎么实现web端向上滑动加载下一页

将对话式 AI 构建到您的 Web 应用程序中 将对话式 AI 构建到您的 Web 应用程序中 Nov 02, 2023 am 11:04 AM

将对话式 AI 构建到您的 Web 应用程序中

See all articles